HTML ve CSS, bir dereceye kadar bir esneklik geliştirmiştir; bu da kavramsal olarak "blok" öğelerinin bile <div>
(HTML'nin en eski ve en genel blok içeriği biçimi) blok olarak gösterilmesi gerekmediği anlamına gelir:
div { display: inline; }
Sizin de belirttiğiniz gibi, <div>
taklit etmek <table>
ve diğer yolcular için yeniden düzenlenebilir . Aslında, çoğu etiket olabilir. Onların özel rolleri göz önüne alındığında, sana yararlı gibi makro etiketleri yeniden eşleştirmek şüpheliyim <html>
, <head>
, <body>
, ve <script>
benzeri, ancak "ortak" etiketleri <div>
, <p>
, <b>
, <em>
, <span>
, ve <pre>
? Kapmak için yukarı. Satır içi etiket bloklarını, satır içi blokları, önceden biçimlendirilmiş etiketlerin akmasını sağlayın, durağan olanları süzün. İstersen deliye dön!
Bu mümkün . Hepimizin "semantik biçimlendirme" filan nasıl kullanmaları gerektiğini konusunda bir hikâye anlatmak isteyebilir vesaire o Pythonistas ile veya inanmak "tek olmalıdır - ve tercihen tek - bariz şekilde yapmak." Yine de Tim Toady akıllı ve meraklı bir adam. Serbest bir el verildiğinde hepsini keşfedecek. Bu ikame yapmak için mevcut esnekliği kullanmayı içerir. Bazıları akıllı, bazıları ise kanıtlanacak. Ancak deneme, yanılma ve tecrübe bunu anlamanın tek yoludur. Dolayısıyla, ikame için yeterli koşullar mevcuttur.
İkamenin de gerekli olduğunu söylemenin gereğinden fazla olduğunu sanmıyorum. En azından son derece uygun . Uzun bir süredir, HTML yoktu <menu>
, <section>
ya <aside>
unsurları. Ancak her yerdeki web sayfaları ve uygulamaların menüleri, bölümleri ve kenar çubukları vardır. Nasıl? Çünkü HTML liste öğeleri ( <ul>
, <ol>
ve <li>
) kolayca yeniden düzenlenir ve bazı kullanımlar menü kapları ve parçaları olarak yeniden sınıflandırılır. <div>
için duramazdı <article>
, <section>
, <aside>
, <figure>
, ve <summary>
. HTML5, daha önce bildirilmemiş bazı kullanım durumlarını yakaladı ve ısmarlama öğeler ekledi. Yaygın, gerçek dünya kullanımına uyum sağlamak için harika bir güncelleme ve düzeltmedir.
Buna rağmen, ısmarlama etiketlere veya anlamsal modellere sahip olmayan pek çok ortak deyim kalmıştır . Sayfalar, dipnotlar, alıntılar, yorum akışları, ilişkili avatarlar, "beğeniler" alt başlıkları ve ben ve başkalarının her gün kullandığı alt yazılar gibi şeyler. Ne yapıcaz? Ne yapabiliriz? HTML6 veya HTML7'yi yakalayana kadar önümüzdeki beş, on ya da birkaç yıl boyunca çalışmalarımızı desteklemek ve desteklemek için sınıfları ve kimlikleri olan "yakın ancak tam olmayan" öğeleri yeniden kullanın. HTML / CSS'nin "evet, bu bir X, teoride, ancak onu etiketleyeceğiz ve onunla bir Y olarak çalışacağız" yeteneği inanılmaz derecede uygun. Gerçekten vazgeçilmez. Web içeriğini esnek kılar ve kırılgan olmamasını sağlar.
Daha da ileri giderek, "semantik biçimlendirme" nin indirgenemez sınırlamaları vardır . Bu, içerik için hayal edebileceğiniz her türlü titiz yapı için geçerlidir.
Standart formatlar tüm insani ihtiyaç, arzu ve çeşitlilik zenginliğini kapsayamaz. Her zaman insanların şu anda yaptıklarının "eğrinin arkasında" olacaklar . Nasıl yenilik yapıyorlar? Heck, HTML5 hala 17. yüzyılın dipnotları, alt başlıkları ve diğer baskı yeniliklerinde eğrinin gerisindedir. Birçok bilgi çalışanı ve içerik oluşturucu için gerekli özelliklerden yoksundur. Böylece doğaçlama yaparız.
Daha da fazla değişmeyen, bilginin bir kurallar kuralına uymadığıdır. Elbette, bir masa olarak başlar. Ama belki de sadece özeti istersiniz - her satırın başlığını liste olarak söyleyin. Belki de çok fazla yer kaplar ve yer tasarrufu sağlayan bir satır içi listesi olmasını istersiniz. Belki de sadece unvanını istediğiniz kayıtlarınız vardır, o zaman tıklarsanız temel detayları görürsünüz. Ya da karmaşık bir listedeki ya da tablodaki öğelerin gruplandırılıp kategorize edilmesini istersiniz. Oh, şimdi tercüme edilmesini ve farklı bir şekilde kategorize edilmesini istiyorsun. Veya çubuk grafik olarak çizilen değerler. Bunlar her gün uygulamalarda, elektronik tablolarda ve veri görselleştirmesinde yapılır. Bilgi alanımızın bir parçası ve parselleri, ne yapmak istediklerimiz ve web üzerinde ne yapmamız gerekiyor. İnsanlar verilerimizin şeklini ve sunumunu sürekli olarak yeniden düzenlerler. Bu sadece bir şey değil veya bir format / düzen, veya bir kavram. Durumlara bağlı olarak ve kullanıcıların etkileşimli olarak yaptıkları seçimlere göre anlambilimiyle elverişlidir. Evet, metni "vurgulandı" olarak işaretle (<em>
) ama bu sadece bir kongre. En az yarım düzine farklı türde "vurgu" içeren belgeler üzerinde çalıştım. Biz ihtiyacımız özelleştirmek ve farklı kullanımlar, farklı yorumlara olduğunu yeniden eşleştirmek için muktedir. Bir tür HTML vurgusu? İnanılmaz derecede indirgemeci. Sınırlandırarak. Kırılgan. Aynı için de geçerlidir <table>
, <p>
vs.
Tüm topluluğun "neyin nereye gittiğini" düşünmesine yardımcı olacak etiketlere / öğelere sahip olmak harika. Bu, sözleşmelerin ve deyimlerin kurulmasına yardımcı olur ve toplu olarak daha verimli olmamızı sağlar. Fakat işleri yeniden biçimlendirme, yeniden tasarlama ve yeniden yapılandırma yeteneği mi? Bu, Web’in kapsayıcılığının ve başarısının bir parçasıdır.