Artık Çok Fazla CSS Var mı? PlatoBlockchain Veri Zekası. Dikey Arama. Ai.

Artık Çok Fazla CSS Var mı?

Ön uç geliştiriciler olarak yıllar boyunca pek çok şey diledik: CSS'de işleri ortalamanın yolları, stilleri kapsüllemek, bir öğenin en boy oranını ayarlamak, renklerimiz üzerinde daha ayrıntılı kontrol elde etmek, bir öğeyi onun durumuna göre seçmek çocukların özellikleri, özgüllük katmanlarını yönetir, öğelerin ebeveynlerinin genişliğine yanıt vermesine izin verir… liste uzayıp gider.

Artık istediğimiz her şeye ve daha fazlasına sahip olduğumuza göre, bazılarımız soruyor: şimdi sahip miyiz? çok fazla CSS'mi?

Karanlık zamanlar

Siz de benim gibi CSS'nin başlangıç ​​döneminde web geliştirmeyle tanıştıysanız, çok fazla CSS'ye sahip olma fikri gülünç görünüyor.

Eskiden bir ön uç geliştiricinin neredeyse tüm iş tanımı CSS'nin sınırlamalarıyla uğraşmaktan ibaretti. düzeltme hack'i şamandıraları temizlemek için, %100 dolgu hilesi kare div'ler oluşturmak, Internet Explorer'ı teklifinizi yapması için kandırmak amacıyla ilgisiz özelliklerin yarı rastgele uygulanmasından bahsetmiyorum bile.

O zamanlar tarayıcı, saf kurnazlık ve gizli büyülerle mağlup edilmesi gereken sinsi bir düşmandı. Bugün mükemmel mülk sizi bekliyor ve MDN'de yalnızca bir kopyala-yapıştır işlemi uzağınızda.

CSS'de yeni dönem

Ancak bugün işler çok farklı: Yalnızca işler çok daha hızlı ilerlemekle kalmıyor, aynı zamanda tarayıcı satıcıları da aslında önemsiyorum geliştiricileri mutlu etme konusunda! Biliyorum, ben de inanamadım. Ama yıllık olarak koşuyorum CSS'nin durumu geliştirici anketi (ki bu bu arada şimdi açık - git al onu!) ve tarayıcı geliştirme ekiplerinin yol haritalarını bilgilendirmek için anket sonuçlarını (diğer birçok veri noktasının yanı sıra) kullandıklarını kesin olarak biliyorum.

Bunun ötesinde, Google anket çalışmamın finansmanına da yardımcı oldu ve hatta işe alımlar gerçekleştirdim. Lea Verou bu yılki anket sorularının seçiminde liderliği üstlenmek.

Sadece Google değil. Genel olarak Safari ve Apple'a saldırmak moda oldu (bazen haklı olarak öyle), ancak birisinin ne kadar tutkulu olduğunu inkar edemezsiniz Jen Simmons geliştiricileri dinlemek ve web'i geliştirmekle ilgilidir.

Ve tarayıcı satıcıları CSS'yi kendi başlarına geliştirmekle kalmıyor; hatta savaş hatları boyunca aşağıdaki gibi girişimlerle işbirliği yapıyorlar: Birlikte Çalışma 2023 tarayıcılar arasındaki tutarsızlıkları ve uyumsuzlukları azaltmaya yardımcı olmak için.

Çok fazla iyi bir şey mi var?

Tüm bunların sonucu olarak artık CSS zenginlikleri konusunda utanç verici bir durumla karşı karşıyayız ve bunu yakalamak zor olabilir. CSS Izgarası neredeyse beş yıl önce büyük tarayıcılarda desteklenmeye başladı, ancak yine de onu her kullandığımda bir referansı kontrol ediyorum. Ve bir o kadar da havalı alt ızgara Görünüşe göre henüz denemedim bile.

Seçim sürecinde CSS Durumuna hangi CSS özelliklerinin dahil edilip edilmemesiLea ve ben birçok özelliği düşündük ama aynı zamanda pek çoğunu da reddettik. Kullandığımız özelliğe bazı örnekler olmadı şunları içerir:

  • The linear() gevşeme fonksiyonu, hareket hızı eğrilerini daha ayrıntılı bir şekilde tanımlamanıza olanak tanır. 
  • The env() işlev, tarayıcı veya cihaz tarafından tanımlanan değişkenleri kullanmanıza olanak tanır. 
  • The scrollbar-width kaydırma çubuğunun görünümünü kontrol etmeye yardımcı olan özellik. 
  • The margin-trim özelliği, bir kapsayıcının alt kenar boşluklarının nasıl davranacağını denetlemenize olanak tanır. 

Bunların hepsi potansiyel olarak çok faydalıdır ve geçmiş yıllardaki CSS kıtlığı sırasında hepsi büyük haber olurdu. Ancak günümüz bağlamında has() seçici veya CSS yerleştirme gibi çok daha büyük duyurularla dikkat çekmek için mücadele etmek zorundalar!

Heyecanlı değil

Silvestar Bistroviç olarak yazıyor, "tüm bu yeni CSS özellikleri konusunda o kadar da heyecanlı değil." Bu durum Twitter'da da yankı buldu Sara Soueidan Önemsediği şeyin "bir özelliğin şu anda ne kadar parlak göründüğü değil, pratiklik" olduğunu belirtiyor.

Bu olumsuz bir tutum gibi görünebilir ama bence anlaşılabilir. Hiç kimsenin bu kadar çok yeni özelliğe ayak uydurması beklenemez!

İstenmeyen (veya belki de amaçlanan) bir başka sonuç da, CSS ne kadar karmaşık hale gelirse, bir tarayıcı motoru geliştirmek isteyen herhangi bir yeni şirket için çıtayı o kadar yükseltir; tüm bunların bakımı ve belgelenmesi söz konusu olduğunda eklenen iş yükünden bahsetmeye bile gerek yok. bu yeni özellikler. 

CSS aşırı erişimi

Ayrıca CSS'nin ele alınması pek uygun olmayan alanlara dalıyor olabileceğine dair çok geçerli bir endişe var. Bu, Sara Soueidan'ın yeni CSS Toggles deneysel uygulamasına tepki verirken dikkat çektiği başka bir şey (işte bunu tartışan bir bilet):

Birçoğu, bu tür davranışların geçiş durumunu yalnızca CSS aracılığıyla yönetmek yerine yeni bir HTML öğesi tarafından en iyi şekilde ele alınabileceği ve CSS'nin erişilebilirlik sorunlarının doğru şekilde ele alınmasını sağlamak için en iyi araç olmayabileceği konusunda çok makul bir noktaya değindi. 

CSS, daha önce JavaScript aracılığıyla işlenen bir şeyi devraldığında, bu genellikle iyi bir şey olarak görülür, çünkü genellikle tarayıcının yüklemesi gereken kod miktarını azaltır. Bu nedenle, CSS Geçişleri konusunda ihtiyatlı bir iyimserim ve CSS Çalışma Grubunun topluluğun endişelerini doğru şekilde ele alacağına inanıyorum. Ancak CSS'nin sınırlarının ötesine genişleyebileceğinden ve HTML ile JavaScript'in sorumluluklarını ihlal edebileceğinden endişelenmeye başlayacağımız bir gün gelebilir.

Yeni beklentiler

Ve belki de değişmesi gereken şey budur: belki de CSS geliştiricilerinin bilmesi gerektiği beklentisini bırakmalıyız herşey CSS'den mi? 

Bu beklenti, CSS'nin sonradan akla geldiği günlerden, düğmenizi tıpkı müşterinin istediği gibi mavi ve kalın yapmak için öğrenmeniz gereken o küçük sinir bozucu sözdiziminden kaynaklanıyor. Ancak günümüzün CSS'sinin, özellikle diğer ön uç görevlere ek olarak, tek bir kişinin ustalaşamayacağı kadar geniş olabileceğini kabul etmemiz gerektiğini düşünüyorum.

As michelle barker koyar:

Ve sonunda ben de oraya varıyorum. Olası tüm CSS özelliklerini muhtemelen hiçbir zaman kullanmayacağım, hatta bu özellikleri bilmeyeceğim gerçeğiyle barıştım. Ve bu birinden geliyor CSS hakkında bir anket yürütüyor!

Ancak bu yeni özellikler kesinlikle faydalı olacaktır. birisi. Birisi onlar hakkında blog yazıları yazacak, onlarla harika CodeP'ler oluşturacak, onlar hakkında konuşmalar yapacak. Bu kişi havalı, genç, enerjik ve hala saçları yerinde olan bir geliştirici olacaktır. Başka bir deyişle, o ben olmayacağım ve bu sorun değil. 

Belki de bu yeni geliştiricinin aynı anda öğrenmesi gereken şeylerden bunalacağından endişeleniyorsunuz. Ama yaptıkları her şeyi aklınızda tutun. alışkanlık tam da bu yeni alternatiflerin yerini alması nedeniyle öğrenmemiz gerekiyor. Bu anlaşmayı istediğim zaman kabul edeceğimi biliyorum.

Ancak bir düşünün: Geçtiğimiz birkaç yılda, ihtiyaç duyduğumuz cihazların sayısında büyük bir artış görmekle kalmadık, aynı zamanda hepimizin interneti biraz farklı şekillerde tükettiğimizi de fark etmeye başladık. engellilik, mevcut durum veya sadece kişisel tercihler. CSS'nin bu yeni gerçekliğe uyum sağlaması gerekmez mi?

Şimdi, itiraf etmeliyim ki tüm bunlar beni biraz nostaljik hissettirdi… o yüzden kusura bakmayın, birkaç şamandırayı temizlemeye gidiyorum, eski günlerin hatırına.


Bahsettiğim gibi yıllık CSS'nin durumu araştırması artık açık. Çok fazla CSS olduğunu düşünseniz de düşünmeseniz de anket, tarayıcı geliştiricilerine nasıl hissettiğinizi bildirmenin harika bir yoludur. git onu doldur eğer 10 dakikanız varsa. 

Zaman Damgası:

Den fazla CSS Püf Noktaları