HTML, XHTML ve CSS CSS (Cascading Style Sheets) Box (Kutu

Transkript

HTML, XHTML ve CSS CSS (Cascading Style Sheets) Box (Kutu
Box (Kutu) Modeli
HTML ya da XML dosyaları iç içe geçmiş
elemanlardan oluşmaktadır.
Örneğin, <html> tagının içindeki <body>
tagındaki <p> elemanında <em> tagı
bulunabilir.
Önceki kısımda bu durum ağaç yapısında
gösterilmiştir.
Benzer şekilde durumu iç içe geçmiş
kutular olarak göstermekte mümkündür.
HTML, XHTML ve CSS
CSS (Cascading Style Sheets)
<ul>
<li>
<p>Text of the
first item in
the list has
<em>a few
emphasized
words</em>
in the
middle.</p>
<li>...
En dıştaki kutu <html> elemanıdır.
Son kutu vurgulanmış bir metindir.
DIV ve P gibi blok yapısındaki elemanlar
kendi kutuları içinde gösterilirler.
<em> ve <SPAN> gibi satır içi elemanlar
daha küçük kutulara bölünebilirler.
Her elemanının boyutu ve pozisyonu bir
önceki elemana göre hesaplanmaktadır.
1
Display Özelliği
Bu özellik bir elemanın blok, satır içi, liste elemanı veya
diğer bir tipte gösterilmesini sağlamaktadır.
İsim:display
Değer:inline | block | list-item | run-in | inline-block | marker |
table | inline-table | table-row-group | table-header-group
| table-footer-group | table-row | table-column-group |
table-column | table-cell | table-caption | none
İlk Değer:inline
Uygulandupu elemanlar:Tüm elemanlar
Kalıtım:Hayır
Yüzdelik:N/A
List-style-type Özelliği
Listelerde hangi tip madde işaretlerinin
kullanılacağını belirler. Bkz. Listtype.html
İsim:list-style-type
Değer:disc | circle | square | decimal | decimalleading-zero | lower-roman | upper-roman |
lower-alpha | lower-latin | upper-alpha | upperlatin | lower-greek | armenian | georgian | none
İlk Değer:disc
Uygulandığı elemanlar: list-item özelliğine sahip
elemanlar
Kalıtım: Evet
Yüzdelik: Ana elemanın font büyüklüğüne göre
2
List-style-position Özelliği
Madde iminin liste kutusunun içine mi
dışına mı yazılacağını belirler.
İsim:list-style-position
Değer:inside | outside
İlk Değer:outside
Uygulandığı elemanlar:list-item özelliği
bulunan elemanlar
Kalıtım:evet
Yüzdelik:N/A
List-style Özelliği
White Space Özelliği
ol { list-style: decimal }
ol ol { list-style: upper-alpha }
ol ol ol { list-style: upper-roman }
İsim:white-space
Değerler:normal | pre | nowrap | pre-wrap |
pre-line
Varsayılan:normal
Uygulandığı elemanlar: blok tipi elemanlar
Kalıtım: Evet
Yüzdelik:N/A
Bkz. White.html
Bkz. Liststyle.html
3
Kutuların İçindeki Boşluklar
Metin elemanların etrafında vereceğiniz
boşluklar kullanıcıya daha rahat okuma
imkanı sunmaktadır. CSS’den önce
HTML’de boşluk bırakmak 3 şekilde
yapılıyordu.
Elemanlarla: Örneğin <pre>, <p>, <br>
Resimlerle: Kimi zaman boşluk göstermek için
resimler kullanılabilmektedir.
Tablolarla: Bu yöntemin dezavantajı çok
karmaşık olmasıdır.
Blok Seviyesi Elemanlarında Boşluk
Blok seviyesinde
harfler arasındaki,
kelimeler arasındaki,
satır arasındaki
paragraflar arasındaki
aralıkları değiştirerek boşluklar ayarlanabilmektedir.
text-align Özelliği
text-align
text-indent
line-height
word-spacing
letter-spacing
vertical-align
Özellikleri bahsedilen boşlukların
ayarlanmasında kullanılmaktadır.
İsim:text-align
Değerler:left | right | center | justify | <string>
Varsayılan:UA-specific
Uygulandığı elemanlar: blok seviyesindeki
elemanlar
Kalıtım:Evet
Yüzdelik:N/A Bkz.textalign.html
4
text-indent Özelliği
Paragraf başlangıç boşluk miktarını
ayarlamaktadır.
İsim:text-indent
Değerler:<length> | <percentage>
Varsayılan:0
Uygulandığı elemanlar: Blok seviyesi
elemanlar
Kalıtım: Evet
Yüzdelik: Ana elemanın genişliğine göre
line-height Özelliği
Satır aralığının ayarlanmasında
kullanılmaktadır.
İsim:line-height
Değerler:<number> | <length> |
<percentage>
Varsayılan değer:UA-specific
Uygulandığı elemanlar: Tüm elemanlar
Kalıtım: Evet
Yüzdelik: Kendi font büyüklüğüne göre
Bkz. Lineheight1.html, lineheight2.html
5
word-spacing Özelliği
letter-spacing Özelliği
İsim:word-spacing
Değerler:normal | <length>
Varsayılan:normal
Uygulandığı eleman: Tüm elemanlar
Kalıtım:Evet
Yüzdelik:N/A
İsim:letter-spacing
Değerler:normal | <length>
Varsayılan:normal
Uygulandığı eleman:Tüm elemanlar
Kalıtım:Evet
Yüzdelik:N/A
blockquote { letter-spacing: 0.04in }
p { letter-spacing: 0.1em }
vertical-align Özelliği
İsim:vertical-align
Değerler:baseline | sub | super | top | text-top
| middle | bottom | text-bottom |
<percentage> | <length>
Varsayılan:baseline
Uygulandığı elemanlar: Satır içi tüm
elemanlar
Kalıtım: Hayır
Yüzdelik: Elemanın kendi yüksekliğine göre
6
cursor Özelliği
a) baseline b) sub c) super d)text-top
e) middle f)text-bottom
İsim:cursor
Değerler:[[<url> ,]* [ auto | crosshair | default |
pointer | move | e-resize | ne-resize | nw-resize |
n-resize | se-resize | sw-resize | s-resize | wresize | text | wait | help | progress]]
Varsayılan:Otomatik
Uygulandığı elemanlar: Tüm elemanlar
Kalıtım:Evet
Yüzdelik:N/A
crosshair
ne-resize
Kutular Etrafındaki Boşluklar
default
text
Pointer
wait
move
help
e-resize
Blok seviyesindeki elemanların etrafındaki
boşlukların ayarlanması görsellik
açısından önemlidir.
Kutu dışında ayarlanabilecek üç boşluk
vardır:
margin
padding
border
7
Marginler ve margin Özellikleri
Margin, bir elemanı çevreleyen kutu ile diğer bir
elemanı çevreleyen kutu arasındaki boşluk
olarak tanımlanır.
İsim:margin-top, margin-right, margin-bottom,
margin-left
Değerler:<length> | <percentage> | auto
Varsayılan:0
Uygulandığı elemanlar: Tüm elemanlar
Kalıtım: Hayır
Yüzdelik: İçinde bulunduğu bloğun genişliğine göre
Bkz. Margin.html
padding Özellikleri
İsim:padding-top, padding-right, paddingbottom, padding-left
Değerler:<length> | <percentage>
Varsayılan:0
Uygulandığı elemanlar: Tüm elemanlar
Kalıtım: hayır
Yüzdelik:İçinde bulunduğu bloğun
genişliğine göre
body { padding: 2em }
body { padding: 1em 2em }
body { padding: 1em 2em 3em }
body { padding: 1em 3em 5em 7em }
8
border Özellikleri
border-color Özellikleri
İsim:border-top-color, border-right-color,
border-bottom-color, border-left-color
Değer:<color>
Varsayılan:elemanın renk değeri
Uygulandığı elemanlar: Tüm elemanlar
Kalıtım:Hayır
Yüzdelik:N/A
border-style Özellikleri
body { border-color: red }
Tüm kenarlıklar kırmızı
body { border-color: red black }
Üst ve alt kenarlıklar kırmızı, sağ ve sol
siyah
body { border-color: red black yellow }
Üst kenarlık kırmızı, sağ ve sol siyah, alt sarı
body { border-color: red black yellow
green }
İsim:border-top-style, border-right-style,
border-bottom-style, border-left-style
Değer:<border-style>
Varsayılan:none
Uygulandığı elemanlar: Tüm elemanlar
Kalıtım:no
Yüzdelik:N/A
9
body { border-style: dotted }
Tüm kenarlıklar dotted
body { border-style: dashed solid }
Alt ve üst kenarlıklar dashed, sağ ve sol
kenarlıklar solid
body { border-style: inset solid double }
Üst inset, sağ sol solid, alt double
body { border-style: ridge groove dashed
dotted }
border-width Özellikleri
İsim:border-top-width, border-right-width,
border-bottom-width, border-left-width
Değerler: thin | medium | thick | <length>
Varsayılan:medium
Uygulandığı elemanlar: Tüm elemanlar
Kalıtım:Hayır
Yüzdelik:N/A
h1 { border-width: thick; font-size: 18pt }
p { border-width: thick; font-size: 12pt }
10
border Özellikleri
body { border-width: 2em }
Tüm kenarlıklar 2 em
body { border-width: 1em 2em } ,
Alt ve üst kenarlık 1 em, sağ ve sol 2 em
body { border-width: 1em 2em 3em }
body { border-width: 1em 3em 5em 7em }
Kenarlıkların tipini belirlemekte kullanılır.
İsim:border-top, border-right, border-bottom,
border-left, border
Değerler:<border-width> | | <border-style> | |
<border-color>
Varsayılan: Her bir kenarlık için farklı
Uygulandığı elemanlar: Tüm elemanlar
Kalıtım:Hayır
Yüzdelik:N/A
Üst üste geçen marginler
Eğer arka arkaya gelen iki eleman var ve
margin değerleri aynı boşluk ile ilgili bilgi
veriyorsa büyük olan margin değeri
kullanılmaktadır.
Örneğin h1’den sonra p tagı gelsin. p’den
önce 12 pt’lik bir margin olsun, h1’den
sonra da 24 pt’lik bir margin olsun.
Tarayıcı sadece büyük olan margini
uygulayacak ve iki tag arasında 24 pt
buşluk bırakacaktır.
11
width Özelliği
height Özelliği
Elemanların genişliklerini ayarlamakta
kullanılır.
İsim:width
Değerler:<length> | <percentage> | auto
Varsayılan:auto
Uygulandığı elemanlar: Blok seviyesi
elemanlar
Kalıtım: Hayır
Yüzdelik:Ana elemanın yüksekliğine göre
Elemanların yüksekliklerini belirtmekte
kullanılır.
İsim:height
Değerler:<length> | auto
Varsayılan:auto
Uygulandığı elemanlar: Blok seviyesi
elemanlar
Kalıtım: Hayır
Yüzdelik:N/A
float Özelliği
İsim:float
Değer:left | right | none
Varsayılan:none
Uygulandığı elemanlar: Tüm elemanlar
Kalıtım: Hayır
Yüzdelik:N/A
img.face
{ float: left; margin-left: 3px 3px 3px 0 }
img.face { float: right; margin-right: 3px 0 3px
3px }
12
Float özelliği ile birlikte çalışmaktadır.
İsim:clear
Değerler:none | left | right | both
Varsayılan:none
Uygulandığı elemanlar: Tüm elemanalr
Kalıtım:Hayır
Yüzdelik:N/A
img { float: left }
h2 { clear: both }
Bütün resimler sol tarafa kayacaktır. Ancak
h2’ler resimlerin yanında bulunamazlar.
img { float: right; clear: right; }
Tüm resimler sağa parent içinde sağa
kayacaktır. Ancak yan yana iki resim
bulunamayacaktır.
min-width, max-width, min-height,
max-height Özellikleri
Bir elemanının alabileceği maksimum ve
minimum genişlik ve yükseklik değerlerinin
girilmesinde kullanılmaktadırlar.
13
Float olmayan bir elemanın yatay
pozisyonu ve genişliği aşağıdaki özellikler
tarafından belirlenir.
margin-left
border-left
padding-left
width
padding-right
border-right
margin-right
Göreceli ve Mutlak Pozisyonlar
Bir HTML dosyasının yerleşimi yapılırken
normalde elemanların kutuları birbiri
arkasına veya altına margin, padding ve
width özelliklerinin belirttiği uzaklıklarda
yerleştirilirler.
Bazen float özelliği ile bir kutu bir yana
yaslanabilir.
Bu yöntemde, tüm çalışma alanı
dolduruluncaya kadar kutular yerleştirilir.
Göreceli
pozisyonlama,
her bir kutunun
pozisyonunu
diğer kutuları
etkilemeden
değiştirmeye
izin vermektedir.
14
position Özelliği
top, right, bottom, left Özellikleri
İsim:position
Değerler:static | relative | absolute | fixed
Varsayılan:static
Uygulandığı elemanlar: Tüm elemanlar
Kalıtım:Hayır
Yüzdelik:N/A
İsim:top, right, bottom, left
Değerler:<length> | <percentage> | auto
Varsayılan:auto
Uygulandığı elemanlar: position özelliği
static olmayan elemanlar
Kalıtım: Hayır
Yüzdelik: İçinde bulunduğu bloğun genişliği
veya yüksekliğine göre
Göreceli Pozisyonlama
Bkz. Contain.html
Göreceli pozisyonlamada diğer
elemanların pozisyonlarına etki etmeden
eleman istenilen pozisyona getirilmektedir.
Genellikle scriptler tarafından animasyon
yapılmak için kullanılmaktadır
Bkz. Menurel.html
15
Sabit Pozisyonlama
Ekranda hep aynı yerde durması gereken
elemanlar var ise sabit pozisyonlama
kullanmak iyi olacaktır.
z-index Özelliği
Sayfayı üç boyutlu olarak düşünmek için
kullanılır.
İsim:z-index
Değerler:auto | <integer>
Varsayılan:auto
Uygulandığı elemanlar: Pozisyonu ayarlanmış
elemanlar
Kalıtım:Hayır
Yüzdelik:N/A
Bkz. Zindex.html
Mutlak Pozisyonlama
Kök elemana göre pozisyonlama
yapılmasıdır.
Bkz. Absolute.html
Renkler
Renkleri göstermek için
farklı yöntemler
kullanılabilir.
Yüzdelik olarak
0-255 arasında değerler
vererek
Hexadecimal sayılar
kullanarak
16
rgb(100%, 35.5%, 10%), kırmızıdan %100,
yeşilden %35.5 ve maviden %10
karıştırarak rengi hesaplamaktadır.
rgb(255, 91, 26) yukarıdaki değerlerin
karşılığıdır.
#FF5B1A ise benzer şekilde yukarıdaki
değerin hexadecimal eşdeğeridir.
A7 = 10 x 16 + 7 = 167
FF = 15 x 16 + 15 = 255
22 = 2 x 16 + 2 = 34
5B = 5 x 16 + 11 = 91
1A = 1 x 16 + 10 = 26
color Özelliği
İsim:color
Değer:<color>
Varsayılan: Tarayıcı spesifik
Uygulandığı elemanlar: Tüm elemanlar
Kalıtım:Evet
Yüzdelik:N/A
em { color: red }
p { color: rgb(255, 0, 0) }
h1 { color: #f00 }
h1 { color: #ff000 }
17
Kenarlık Renginin Ayarlanması
background-color Özelliği
p { border: 5pt solid red }
p { border: 5pt solid; color: blue; }
İsim:background-color
Değerler:<color> | transparent
Varsayılan:transparent
Uygulandığı elemanlar: Tüm elemanlar
Kalıtım: Hayır
Yüzdelik:N/A
Bkz. Backcolor.html
background-image Özelliği
Background-repeat Özelliği
İsim:background-image
Değer:[ <url> | none ]
Varsayılan: none
Uygulandığı elemanlar: Tüm elemanlar
Kalıtım: Hayır
Yüzdelik:N/A
p { background-image: url(ball.gif);
background-color: #FFAA00; }
İsim:background-repeat
Değerler:repeat | repeat-x | repeat-y | norepeat
Varsayılan:repeat
Uygulandığı elemanlar: Tüm elemanlar
Kalıtım: Hayır
Yüzdelik:N/A
18
background-position Özelliği
Üst üste Geçme ve Miras
<html>
<title>A sample document
</title>
<body>
<h1>The headline</h1>
<p>The text</p>
</body>
</html>
body { font-family: serif } (Tarayıcı sitili)
h1 { font-family: sans-serif } (Tasarımcı
sitili)
19
Üst üste geçmeden sonraki durum
Kalıtım mekanizması devreye girdiğinde
ise
Üst üste geçmede çakışma meydana
gelirse
<html>
<title>A sample document
</title>
<body>
<h1>The headline</h1>
<p>The text</p>
</body>
</html>
Kullanıcı sitil dosyası:
body { color: black; background: white }
Tasarımcı sitil dosyası:
body { color: white; background: black }
20
Ayrı ayrı baktığımızda
Tasarımcı kuralları, kullanıcı kurallarını
yenmektedir.
Kullanıcı sitilinin Uygulanması
Sonuç olarak
Kimi durumlarda kullanıcı sitillerinin
uygulanması gerekebilir.
body { color: black !important;
background: white !important }
21
Dışsal Sitil Dosyaları
Link elemanı ile bağlama
Tekrar kullanılabilirlik
Performans
Kullanıcı seçimi
sunması açısından dışsal sitil dosyaları
önemlidir.
<link rel="stylesheet" type="text/css"
href="mystyle">
Bkz. Link.html
Bkz. Inline.html
@import elemanı ile bağlanma
<style type="text/css">
@import
url("http://www.w3.org/StyleSheets/Core/St
eely");
</style>
<style type="text/css">
@import "mystyle";
h1 { font-style: palatino, sans-serif }
p { color: blue; background: white }
</style>
22
<style type="text/css">
@import "basics";
@import "list-styles";
@import "headings";
@import "smaller-headings" print;
</style>
23

Benzer belgeler