Uzantı | .css |
---|---|
MIME türü | text/css |
tarafından geliştirildi | CSS Çalışma Grubu ( in ) |
İlk versiyon | 17 Aralık 1996 |
Web siteleri |
www.w3.org/Style/CSS taslakları.csswg.org |
Basamaklı Stil Sayfaları yaygın olarak adlandırılan, CSS ve İngiliz Basamaklı Stil Sayfaları , bir formu bilgisayar dili belgelerin sunumunu açıklar HTML ve XML . Standartlar CSS tanımlayarak yayınlanmaktadır World Wide Web Konsorsiyumu (W3C). 1990'ların ortalarında tanıtılan CSS, web tasarımında yaygın olarak kullanılmaya başlandı ve 2000'lerde web tarayıcıları tarafından iyi bir şekilde desteklendi .
Stil sayfası kavramı , World Wide Web'in başlangıcından beri mevcuttur : İlk WorldWideWeb web tarayıcısı , belgelerin bugün “kullanıcı stil sayfası” olarak kabul edilecek olan kullanılarak biçimlendirilmesine olanak tanır. Benzer şekilde, Viola içinde 1992 ve uyum içinde 1993 tarayıcılar benzer bir mekanizma kullanmak oluşturulmasını saptamak için yazı tipi , renk veya metin hizalama.
Ancak bunlar , belgenin yazarı tarafından belirlenen stiller değildir . HTML de ilk yıllarında sunum öğelerinden yoksundu, bu nedenle tarayıcıların , elektronik basılı yayından türetilen bir yaklaşımla, yazarların web sayfalarının düzenini kendilerinin belirlemesine izin vermeleri için artan bir baskı vardı .
Bu bağlamda, 1994 - 1995 yıllarında, yepyeni Netscape Navigator , Marc Andreessen'in girişimiyle ilk HTML sunum öğelerini tanıtırken, dış stiller için ilk teklifler aynı anda ortaya çıktı:
CSS'nin görünümü, "HTML'nin bir yapılandırma dilinden sunum diline evrimine bir alternatif sunma" arzusuna yanıt verir.
Aynı zamanda üçüncü bir geliştirme yolu da açıktır: James Clark tarafından geliştirilen SGML belgelerinin DSSSL dönüşüm dili, yalnızca tanımlayıcı olmayan ve gerçek bir programlama diline yaklaşan bir stil dili olasılığını önerir . Bu yolu, 1996'da W3C'ye 1997'de Netscape Navigator 4 tarafından uygulanan “JavaScript Tabanlı Stil Sayfaları”nı (JSSS) öneren Netscape izler .
Bu nedenle CSS'nin kökenleri üç ana olasılıkla bağlantılıdır:
Håkon Wium Lie tarafından yapılan ilk önerilen Basamaklı HTML Stil Sayfaları , o zamanlar önerilen HTML 3.0 spesifikasyonunun baş editörü olan Dave Raggett'in dikkatini çekiyor . Tamamen yapısal HTML'nin bir savunucusu olarak, WWW üzerine ikinci uluslararası konferansta sunulabilmesi ve tartışılabilmesi için bir CHSS çalışma belgesinin yayınlanmasını teşvik etti ( Mosaic and the Web , Chicago, 1994). Ayrıca bu dili test etmek için Håkon Lie the Arena tarayıcısı ile modifiye etti ve bunu 1995'teki üçüncü WWW konferansında gösterdi.
Aynı zamanda, o sırada Argo tarayıcısında çalışan ve kendi “ Stream-based Style Sheet Proposal ”ı (SSP) W3C'ye sunan Bert Bos , çabalarını Håkon Lie'ninkilerle birleştirmeye karar verdi. SSP'nin yalnızca HTML'ye değil, diğer biçimlendirme dillerine de uygulanabilir olması fikriyle geliştirilen Bert Bos ve Håkon Lie, bu hedefi benimser ve daha sonra doğru bir şekilde CSS haline gelen şeyin temel özelliklerinden biri haline getirir.
Bu nedenle CSS'nin bir başka yönü, mevcut alternatifler karşısında belirleyicidir: CSS, "cascade" ( basamaklı stil sayfası ) fikrini , yani "bir belgenin" stilinin olma olasılığını içeren ilk dildir. birden çok "stil sayfasından" miras alınır. Bu, bir öğeyi biçimlendirmenin birkaç rakip kaynağı arasında hakemlik yapmayı mümkün kılar ve bu nedenle yazarların ve kullanıcıların stilistik tercihleri arasında oluşturma ihtiyacına yanıt verir.
World Wide Web Consortium (W3C) 1995 yılında faaliyete geçen ve www tarzı posta listesi oluşturuldu. Aynı yıl Paris'te CSS'nin geleceği için belirleyici bir “W3C stil sayfası atölyesi” düzenlendi. Özellikle, Netscape'in JSSS hipotezini dışlayan stil sayfalarını basit bir biçimde tutma arzusunu doğrular. Ayrıca, Thomas Reardon (Microsoft), Internet Explorer'ın gelecekteki sürümlerinde CSS'nin gelecekteki desteğini duyurur : bu nedenle, W3C yıl sonunda gelecekteki HTML'yi onaylamak için " HTML Editorial Review Board " (HTML ERB) oluşturduğunda, Lou Montulli tarafından temsil edilen DOM ve CSS spesifikasyonları Netscape, sonunda Bert Bos ve Håkon Lie tarafından yönetilen CSS projesine katılıyor.
Yazılımdan farklı olarak , CSS spesifikasyonları, bir tarayıcının belirli bir sürüme başvurmasına izin verecek şekilde birbirini izleyen sürümlerde geliştirilmez. CSS, her yeni düzeyi bir öncekiyle bütünleştirmeye ve her uygulamanın bir öncekiyle uyumlu olmaya zorlayan "seviyeler" tarafından geliştirilmiştir: Bu nedenle CSS1, CSS2'nin bir alt kümesi olarak geliştirilmiştir ve kendisi de bir alt kümesi olarak geliştirilmiştir. CSS3. Bu kısmen CSS'nin normatif ilerlemesinin yavaşlığını açıklar.
Nihai CSS1 spesifikasyonu 17 Aralık 1996'da yayınlandı ve yaklaşık elli özellik tanımladı. CSS1, "yazarların ve okuyucuların HTML belgesine stiller (…) eklemesine izin veren basit bir stil sayfası mekanizması" olarak tanımlanır. Bu basitlik, doğrudan insan kullanıcıları tarafından kolayca okunabilen ve yazılabilen bir dilin ve bilgisayar yayıncılığındaki yaygın kullanımlara uygun bir terminolojinin seçimine dönüşmektedir. Bu nedenle, yeni bir sözdizimsel analiz modunun uygulanmasından kaçınmak için düzenli olarak bahsedilen CSS'yi bir XML veya SGML sözdiziminde ifade etme seçeneği kesinlikle reddedilmiştir.
BB1 sadece kendi dilbilgisini tanımlamaz : bu ilk seviye, orijinal uygulamalar tarafından bu gelecekteki stil sayfalarının okunmasına izin verirken, sonraki seviyelerin yeni işlevler eklemesine izin vermeyi amaçlayan bir dilbilgisini gerçekten tanımlar. Bu yeni özellikler, orijinal uygulamalar tarafından anlaşılmayacak, ancak bu şekilde tanımlanabilir ve göz ardı edilebilir. CSS böylece geriye dönük uyumluluğunu garanti eder .
BB1 esas olarak metnin tipografik görüntü oluşturma özelliklerini tanımlar : yazı tipleri (yazı tipleri), renk, yazı tipi boyutu, ağırlık , boşluk, kenarlıklar ve liste işaretçilerinin yönetimi.
Bu nedenle henüz bir "düzen" sorunu yoktur: floatdaha sonra web tasarımlarının genel CSS düzeni için yaygın olarak kullanılacak olan özellik , daha sonra yalnızca yerel olarak yanına, yanına küçük bir bölümünü yerleştirmenin bir aracı olarak düşünülür. resim gibi içerik ve metnin geri kalanı. Sorunlu CSS1 uygulamaları göz önüne alındığında, tablegenel düzeni işlemek için HTML öğesini ele geçirmek, şimdilik web içeriği yazarları için en yaygın çözüm olmaya devam ediyor.
1996 yılında, Internet Explorer 3.0, CSS henüz formüle edilirken kısmen uygulayan ilk ticari tarayıcıydı. Chris Wilson tarafından yönetilen bu erken uygulama, nihai spesifikasyonla eşleşmiyor. 1997'de, Internet Explorer 4.0 , Windows altında bu tarayıcının Internet Explorer 7'ye kadar çeşitli sürümlerinde artan ancak sorunlu CSS desteğinin kökeninde yeni bir işleme motoru olan Trident'in doğuşunu gördü .
Netscape Navigator 4.0, CSS'ye karşı tarihsel isteksizliğine rağmen 1997'de aynı yolu izledi: tarayıcı savaşları bağlamında , asıl mesele Microsoft'un kendisini en popüler tarayıcı olarak öne sürmesini önlemekti. daha uyumlu. Ancak, dahili JavaScript yöntemlerine dayanan bu aceleci uygulamanın nihayetinde sınırlı ve çok güvenilmez olduğu ortaya çıkıyor. Netscape Navigator 4.0 ayrıca önemsenmeyecek bir JSSS uygulaması getiriyor. Yeni beklemek zorunda kalacak Gecko render motoru dan Mozilla projesinin BB1'de gerçek uygulanmasını sağlamak için.
1998'de Netscape ve Microsoft arasındaki tarayıcı savaşları sona erdiğinde, Håkon Lie'nin bu arada teknik direktörü olduğu Opera 3.5, ilk "Test paketinin yayınlanmasıyla kolaylaştırılan CSS1'in daha eksiksiz bir uygulamasını başardı. Basamaklı Stil Sayfaları için (CSS) Seviye 1 ”öncelikle W3C için Eric Meyer tarafından yaratılmıştır . Bu test takımlarının varlığı, hem tarayıcılardaki uygulamalar için hem de yazarlar tarafından CSS tekniklerinin benimsenmesi için (özellikler ve değerlerin ayrıntılı örneklerini sağlayarak) önemli bir varlık olduğunu kanıtlamaktadır.
Son olarak Tantek Çelik öncülüğünde Mart 2000'de piyasaya sürülen Macintosh için Internet Explorer 5.0 , Trident ile ilgisi olmayan özel bir işleme motoru olan Tasman'a dayalı, CSS1'i tam olarak destekleyen (%99'dan fazla) ilk tarayıcıdır. Her uygulamaya özgü önceki kodlama uygulamalarıyla (“etiket çorbası”) uyumluluğu sağlamak ve web belgelerinin CSS ve HTML standartlarına uygun olup olmadığına bakılmaksızın doğru görüntülenmesine izin vermek için, aynı zamanda doktip değiştirme tekniğini ilk uygulayan kişidir . Daha sonra tüm tarayıcılar tarafından benimsenen bu, daha sonra CSS'nin aşamalı uygulamasının anahtarlarından biri haline geldi: gerçekten de tarayıcının uyumluluk nedenleriyle eski tescilli uygulamaları tutmasına izin verirken, belge türü bildiriminin sözdizimine göre seçim yapma olanağına sahip oldu. Yeni standart uygulamalara uygun bir oluşturma modu için sayfanın.
1990'ların sonlarındaki bu dönemde, web tasarımı öncelikle HTML'nin bir sunum formatı olarak kullanımına bağlıydı. Netscape'in tarayıcı savaşlarının sonunda yenilmesi, Mozilla projesi ile başlayan yenilenme, IE5 Mac'in ortaya çıkması ve daha az ölçüde Internet Explorer Windows 5.x'in evrimi, Ancak 2000'li yılların başında , yazarlar tarafından web sitesi tasarım uygulamalarının evriminde yeni bir aşama başladı: bu tarayıcılar gerçekten de tarayıcı savaşları zamanından kalma, yapı ve sunumu karıştıran tarihsel uygulamaların bir yaklaşım lehine terk edilebileceğini göstermeyi mümkün kılıyor. stil sayfalarına ve web standartlarına daha genel saygıya dayalıdır (HTML ve CSS anlamında). Web Standartları Projesi'nin kurucu ortağı ve 1998'de A List Apart'ın (in) kurucusu olan Jeffrey Zeldman , daha sonra standartları teşvik etmek için bu hareketin sembolik figürü olarak ortaya çıkıyor . Ayrıca, sunum tablolarına dayalı belgeleri biçimlendirme çerçevesinde geçici olarak kalırken CSS tekniklerinden yararlanan “hibrit” bir tasarım yaklaşımının da ilham kaynağıdır.
CSS2, aceleye getirilmiş hırslarİlk CSS1 spesifikasyonunun henüz karşılamadığı ihtiyaçları karşılamak için CSS, 1997'de W3C içinde Chris Lilley başkanlığındaki yeni bir çalışma grubuna atandı . 2007'de bu grup Apple , Google , IBM , Microsoft , Adobe , Mozilla Foundation ve Opera'dan temsilciler içeriyordu .
Mayıs 1998'de bir öneri olarak piyasaya sürülen ikinci CSS seviyesi, özellikle yaklaşık 70 ek özellikle, basamaklı stil sayfalarının teorik olanaklarını önemli ölçüde genişletir. CSS1 ile başlatılan metnin tipografik biçimlendirmesine ek olarak:
Ancak, bu işlevsel zenginlik, uygulamalarında yalnızca sınırlı bir yankı ile buluşmaktadır:
Bu zorlukları ve BB2 uygulamalarının yavaşlığını açıklamak için birkaç nedenden bahsedilmiştir:
CSS2'nin uygulanmasından elde edilen geri bildirimler, W3C CSS çalışma grubunun 2001'den itibaren , çeşitli tarayıcılar tarafından gerçekte benimsenenlere dayanarak, gözden geçirilmiş bir CSS 2.1 (" CSS Düzey 2, Revizyon 1 ") yazmasına yol açtı . Bu incelemenin amaçları şunlardır:
CSS 2.1, CSS2'yi birçok ayrıntı noktasında düzeltir, belirli bölümleri tamamen veya kısmen kaldırır (" işitsel " medya türü altında tanımlanan ses stilleri , baskı stilleri, indirilebilir yazı tipleri, daha inandırıcı tanımları geleceğe reddedilir. CSS3) ve bunu uygulamalar sırasında güncellenen bulgulara dayanarak açıklar ("biçimlendirme bağlamları" aracılığıyla kayan blokların gelişmiş yönetimi).
Ardışık 8 sürümü deneyimledikten sonra, CSS 2.1 Temmuz 2007'de bir aday tavsiyesidir, yani uygulamaların izlemesi gereken standarttır.
In 2007 , aslında vardı hiçbir tarayıcı CSS 2.1 entegrasyonunu tamamlamış: Bu ek olarak Opera 9. tarafından Firefox 2 ve% 94 oranında Internet Explorer 7,% 91 ile% 56 oranında uygulanacağı konusunda, grafik tarayıcıların sadece bir parçası var Håkon Lie'nin girişimiyle 2005 yılında Web Standartları Projesi tarafından başlatılan Acid2 testini başarıyla geçti veya hedef olarak tuttu , özellikle de temel gerekli ilerleme olarak kabul edilen CSS 2.1 işlevlerinin bir seçiminin uygulanmasını teşvik etmek için: konumlandırma gösterim sırasında elemanlar, tablo oluşturma modelinin tüm elemanlara genelleştirilmesi, CSS ile oluşturulan içerik. Bu nedenle, CSS'nin profesyonel kullanımı, ortak uygulamalar tarafından belirlenen keyfi bir alt kümesiyle sınırlı kalır.
Basamaklı stil sayfalarının üçüncü seviyesinin geliştirilmesi, CSS 2.1'in yanı sıra 1999'da başladı.
CSS3, güncellemelerini kolaylaştırmak için “modüler” hale geliyor, aynı zamanda artan kapasite ve ihtiyaçlara sahip kullanıcı aracıları (grafik tarayıcılar, mobil tarayıcılar, ses tarayıcıları) tarafından uygulanmasını da kolaylaştırıyor. Tarayıcılar böylece CSS3'ün alt kümelerini uygulayabilir.
Bu nedenle, CSS3'ün ilerleme derecesi, modüllere ve CSS çalışma grubu tarafından onlara verilen öncelik derecesine göre değişir. 2007'de en gelişmiş modüller (aday tavsiyeleri) şunları içerir:
Diğer durumlarda, modüller aday tavsiye aşamasına ulaşabilir, ancak uygulama çağrısının ardından güncellenen zorluklar nedeniyle daha sonra çalışma belgesi aşamasına geri döndürülebilir. Bu, örneğin “CSS Metin” tipografi modülünün durumudur.
Benzer şekilde, uygulamalar farklı tarayıcıların stratejilerine ve ihtiyaçlarına göre değişir:
Hollandalı bir programcı olan Jori Koolstra, 2002'de dinamik basamaklı stil sayfaları kavramını önerdi .
CSS çalışma grubunun bazı üyeleri ve web geliştiricileri, CSS3'ün yavaş ilerlemesi sorununu gündeme getirdi:
2008'de, W3C tarafından hiçbir modülün tamamlanmış olduğu düşünülmedi ve bu nedenle tarayıcılardaki uygulama, genellikle bir test olarak marjinaldir, tıpkı öneki kullanımı yalnızca Gecko tabanlı tarayıcılarla sınırlayan Gecko motorunun -moz-xxx işlevleri gibi .
Dördüncü seviye basamaklı stil sayfalarının yazılması, CSS 3 modüllerinin yanı sıra 2010'da başlıyor.
Bazı modüller dondurulur veya dondurulma sürecinde, ikincisinin olanaklarını genişletmeye devam etmek için taslaklar başlatılır. Bu nedenle iş, önceki katmana ek olarak, hatta seçiciler için alt katman kullanılarak yapılır.
CSS'nin ana hedeflerinden biri, belgelerin dışında biçimlendirmeye izin vermektir. Örneğin HTML'de yalnızca bir belgenin yapısını tanımlamak ve tüm sunumu ayrı bir CSS stil sayfasında açıklamak mümkündür. Stiller, belgeyi görüntüleyen ziyaretçilerin web tarayıcısında son anda uygulanır. Bu ayrım, erişilebilirliği iyileştirmeyi , sunumu daha kolay değiştirmeyi ve bir belgenin mimarisinin karmaşıklığını azaltmayı mümkün kılan bir dizi fayda sağlar .
Bu nedenle, stil sayfalarının avantajları çoktur:
CSS, bir belgenin oluşturulmasını, oluşturma ortamına ve yeteneklerine ( monitör veya ses cihazı türü ), tarayıcınınkilere ( metin veya grafik) ve ayrıca kullanıcının tercihlerine göre tanımlamanıza olanak tanır .
Stil sayfaları, CSS2.1'e göre aşağıdaki ortamlar için farklılaştırılabilir:
Başka tip medyalar için teorik olarak CSS2.1 tarifnamede öngörülen, ancak kullanıcı aracıları tarafından uygulanan değildir: brailleve embossedBraille tabletler ve gofrajlama için, hem de ttyiçin tele yazıcılar .
Her ortamda, belge yazarı tarafından belirlenen sunum stilleri, kullanıcı aracısı varsayılanları ve kullanıcı tercihlerinden ve kişisel konfigürasyondan türetilenlerle birleşir.
Alıcının yetenekleri, CSS3 " medya sorguları " modülünü uygulayan kullanıcı aracıları için tasarlanan yazarlar tarafından dikkate alınabilir : bu, bir stil sayfasının dikkate alınmasını özellikle çözünürlük veya renkleri geri yükleme yeteneği.
Stillerin çağlayanı"Kademeli", ilgili öncelik derecelerine göre aynı belgeye uygulanan farklı stil kaynaklarının birleşimidir. Farklı kademeli modlar birleştirilebilir:
Şık bir belgenin oluşturulması, kutu ve akış kavramları tarafından belirlenir. CSS oluşturma motoru , belgenin mantıksal ağacını yansıtan bir "biçimlendirme yapısı" oluşturur . Bu yapının her bir öğesi, yapılandırılabilir görüntü veya ses oluşturma özelliklerine sahip bir veya daha fazla bölge oluşturur. Görüntüleme veya okuma, biçimlendirme yapısının doğrusal düzeninde göründüğü gibi her bir öğe için art arda oluşturulan kutuların akışından gerçekleşir.
Duruma bağlı olarak, bu farklı kutu türleri:
CSS kutularına uygulanabilir özellikler çiftler şeklinde ifade edilir propriété: valeur.
Özellikler, " genişlik ", " yazı tipi boyutu " veya " ses hacmi " gibi İngilizce araç sözcükleri kullanılarak etiketlenir .
Değerler, duruma bağlı olarak, başka bir yerde standartlaştırılmış birimler veya CSS'ye özgü anahtar kelimeler kullanılarak ifade edilebilir. Örneğin, bir arka plan veya metin rengi, RGB modeli veya siyah, mavi, fuşya vb. anahtar sözcükler kullanılarak ifade edilebilir .
CSS özellikleri, iki karşıt kısıtlama arasında bir uzlaşma olarak kurulmuştur: bireysel özellikleri çoğaltarak kullanıcı aracılarının stil sayfalarını okumasını kolaylaştırmak veya daha az sayıda birleşik özellik kullanarak yazarların yazmasını kolaylaştırmak. Örneğin, bir arka plan görüntüsünün konumu, background-positioniki ayrı özellik tarafından değil, hem apsis hem de ordinat değerlerini birleştiren tek bir özellik ( ) tarafından belirlenir . Benzer şekilde, yazarların bir dizi özelliğin yazılmasını basitleştirmelerine izin veren kısaltılmış özellikler vardır: kısayol font, örneğin, tüm yazı tipi, boyut, satır yüksekliği, büyük/küçük harf, ağırlık ve italik özelliklerini tek bir kuralda özetlemenizi sağlar. Ancak, "/" karakterinin kullanılması, stil sayfalarının kullanıcı aracıları tarafından ayrıştırılmasını çok daha karmaşık hale getirir.
Seçiciler ve kural bloklarıÖzellikler, {} ayraçları ile sınırlanan kural blokları ile gruplandırılmıştır. Her bloktan önce, ilgili özelliklerin uygulanması gereken yapısal elemanları belirleyen bir seçici bulunur:
/*Je suis un commentaire qui commente le code et qui ne fait rien*/ body { /*Couleur de fond : */ background-color: green; } p { /*Couleur du texte : */ color: red; /*Taille du texte en px (pixel) : */ font-size: 20px; } button { /*Contour : */ outline: none; /*Bordure*/ border: none; /*Couleur de fond : */ background-color: black; /*Couleur de texte : */ color: white; } /*Hover veut dire au survol d'un bouton*/ button:hover { /*Couleur de fond : */ background-color: green; } /*Selection veut dire à la selection du texte*/ *::selection { /*Couleur de fond : */ background-color: black; /*Couleur du texte : */ color: white; } CSSOONesne yönelimli CSS (İngilizce OOCSS ), 2009 yılında nesne yönelimli programlama modelinde oluşturulmuş ve stillerinin çeşitli bağlamlarda yeniden kullanılmasına izin veren bir yöntemdir .
BEMBEM (Blok, eleman, değiştirici), 2010 yılında icat edilmiş, performansı artırmak için bir ağaç yapısı şeklinde stillerin bildirilmesinden oluşan bir CSS yazma tekniğidir. Misal:
.product { &-productLabel { ... } &-productPicture { ... } }Not: ve işareti (&), Sass ve LESS içindeki ana nesneyi temsil eder .
index.html dosyasının içeriği :
<!DOCTYPE html> <html> <head> <meta charset="utf-8"/> <link rel="stylesheet" href="style.css"/> <title>Exemple html et css</title> </head> <body> <button class="btn" id="btn1">Premier bouton</button><br/><br/> <button class="btn" id="btn2">Deuxième bouton</button><br/><br/> <button class="btn" id="btn3">Troisième bouton</button> </body> </html>style.css dosyasının içeriği :
.btn { height: 50px; color: white; font-size: 20px; cursor: pointer; transition: background-color 2s; outline: none; border: none; } *::selection { background-color: lightgreen; color: darkblue; } .btn:hover { transition: background-color 2s; } #btn1 { background-color: lightgreen; } #btn1:hover { background-color: darkgreen; } #btn2 { background-color: lightblue; } #btn2:hover { background-color: darkblue; } #btn3 { background-color: red; } #btn3:hover { background-color: orange; }HTML dosyasını bir tarayıcıda açmak, CSS dosyasıyla yapılandırılan stilleri gösterir.
CSS başlangıçta bir belgenin yapısı ve sunumu arasında bağımsız olmayı amaçladı.
Bu nedenle, 2003 yılında Dave Shea (tr) tarafından oluşturulan CSS Zen Garden sitesi , aynı web sayfasının görüntülenen işlemesini yalnızca CSS sayesinde ve kodunda herhangi bir değişiklik yapmadan serbestçe değiştirme olasılığını göstermeyi amaçlamaktadır. Aralık 2006'da ana sayfasında 986 farklı tasarım sundu. Bununla birlikte, bu tasarımların çoğu, kısmen veya tamamen sayfanın metin içeriğinin, görünümünü zenginleştirerek yeniden üreten CSS görüntüleri ile değiştirilmesine dayanmaktadır: grafik özgürlüğü her zaman kısmen metnin bir görüntüye dönüştürülmesine dayanmaktadır. . Öte yandan, CSS Zen Garden, yalnızca CSS seçicilerini desteklemeye yarayan, anlamsal olarak nötr öğeler ve niteliklerle birleştirilmiş bir yapıya sahip, tek bir belgeyle sınırlı bir stil alıştırması olmaya devam ediyor.
Birden çok stil sayfası geliştirilmiş birçok HTML belgesi örneği olmasına rağmen, belge yapısından bağımsız olan genel stil sayfalarının yalnızca birkaç örneği vardır. Varsayılan kullanıcı aracısı stilleri buna bir örnektir, ancak düzen tanımı olmayan basit tipografik efektlerle sınırlıdır. Genel olarak, stil sayfaları, stil verilecek belgenin yapısına yakından bağlıdır ve farklı yapılandırılmış belgelerde yeniden kullanılması zordur. Stillerin bu potansiyel bağımsızlığın, belgelerin belirli yapısına yönelik olarak kullanılması, HTML CSS kalıplarının oluşturulması yoluyla daha fazladır.
Daha genel olarak :
CSS bir web sayfasının erişilebilirliğini, nihai olarak kullanıcıya tarayıcısında bir belgenin oluşturulması üzerinde kontrol sağlayarak teşvik eder : böylece, örneğin karakterlerin veya renklerin görüntülenme boyutuyla ilgili kısıtlamalara veya tercihlere göre uyarlamak mümkündür. CSS, yapı ve sunumu birbirinden ayırarak, potansiyel olarak teknik yardımlarla daha kullanışlı olan anlamsal yapılandırılmış belgelerin yazılmasını da teşvik eder: başlık öğelerinin sunum özgürlüğü, örneğin, bunların resmi hiyerarşik düzenine kesinlikle saygı gösterilmesini mümkün kılar. sırayla teknik yardımların gezilebilir bir içindekiler tablosu oluşturmasına izin verir. Son olarak, CSS, yazarlara metnin biçimlendirmesini zenginleştirecek araçlar vererek, resimlere yerleştirilen metinlerin kullanımını sınırlamayı mümkün kılar.
Ancak, CSS'nin bazı kullanımları içeriğin erişilebilirliğini de tehlikeye atabilir:
Uygulama yöntemleri web içerik erişilebilirlik direktifleri ( RGAA , Uwem örneğin) bu nedenle CSS stilleri kullanımı için kuralları tanımlar.
CSS, yazarlar ve kullanıcılar tarafından doğrudan manipülasyonu teşvik etmek için hem işlevselliğinde hem de sözdiziminde basit bir sunum formatına sahip olma arzusuna yanıt verir. Bununla birlikte, bu basitlik birkaç faktör tarafından sorgulanmaktadır:
CSS çerçeveleri, basamaklı stil sayfalarının dilini kullanarak web sayfalarının daha kolay, standartlara daha uyumlu stilini sağlamayı amaçlayan önceden hazırlanmış kitaplıklardır. Blueprint , Bootstrap , Cascade Framework ve Foundation'ı içerirler . Programlama dili ve komut dosyası kitaplıkları gibi, CSS çerçeveleri de genellikle HTML "<head>" içinde başvurulan harici .css sayfaları olarak birleştirilir. Web tasarımı ve düzeni için bir dizi hazır seçenek sunarlar. Bu çerçevelerin birçoğu yayınlanmış olmasına rağmen, bazı yazarlar bunları öncelikle hızlı prototip oluşturma veya öğrenme için kullanır ve ilişkili tasarım, bakım ve indirme maliyetleri olmaksızın yayınlanan her site için uygun olan "el yapımı" CSS'yi tercih eder. . site tarzında.
Bir projede kullanılan CSS kaynaklarının boyutu arttıkça, bir geliştirme ekibinin genellikle bunları düzenli tutmak için ortak bir tasarım metodolojisine karar vermesi gerekir. Hedefler, geliştirme kolaylığı, geliştirme sırasında işbirliği kolaylığı ve tarayıcıda dağıtılan stil sayfalarının performansıdır. Popüler metodolojiler arasında OOCSS (Nesneye Yönelik CSS), ACSS (Atomik CSS), oCSS (Organik Basamaklı Stil Sayfası), SMACSS (CSS için Ölçeklenebilir ve Modüler Mimari) ve BEM (Blok, Öğe, Değiştirici) bulunur.