SORU
26 EYLÜL 2011, PAZARTESİ


Neden tire CSS seçiciler için tercih edilen HTML öznitelikleri.

Geçmişte her zaman tanımlamak için altını kullandımsınıfveıdHTML öznitelikleri. Son birkaç yıldır üzerinde çizgiler için, genelde bana çok mantıklı geldi çünkü trend in the community kendimi ille hizalamak için değiştirdim.

Her zaman çizgiler daha fazla dezavantajları var düşündüm ve faydalarını göremiyorum:

Tamamlama ve Düzenleme kodu

Birçok editör ile istediğim sembol sekmesini bulamıyorum sözcük ayırıcılar tire tedavi. Sınıf "featured-product", otomatik tamamlama var "featured", tire girin ve tamamlandı "product".

"featured_product tek adımda dolu olabilir bu yüzden" tek bir kelime olarak kabul edilir. altçizgiler

Aynı belge içinde gezinmek için geçerlidir. Kelimeleri atlayarak ya da çift tıklayarak sınıf isimleri tire ile ayrılır.

(Daha genel olarak, sınıflar ve kimlikleri olarak düşünüyorumbelirteçleriyani bir belirteç bana mantıklı gelmiyor bu kadar kolay tire splittable.)

Aritmetik operatör ile belirsizlik

Tire sonları kullanarak nesnesinin JavaScript 25**. Bu alt çizgi: ile mümkündür

form.first_name.value='Stormageddon';

(Kuşkusuz form elemanları bu şekilde kendimi erişimi bilmiyorum ama vs evrensel bir kural olarak, alt çizgi, tire karar verirken, birisi olabileceğini düşünün.)

Sass gibi dilleri (özellikle Compass çerçeve boyunca) değişken adları için bir standart, hatta çizgi üzerinde anlaşmaya vardı. Onlar aslında çok başında alt çizgi kullanılır. Bu farklı ayrıştırılmış olması bana garip:

$list-item-10
$list-item - 10

Diller arasında değişken adlandırma ile tutarsızlık

O zamanlar, ruby, HTML/CSS ve JavaScript PHP değişkenleri için underscored_names yazardım. Bu "içinde" ben şimdi kullanın: . sığdırmak için uygun ve tutarlı, ama yine oldu

  • HTML/dash-case CSS
  • JavaScript camelCase
  • Ruby ve PHP underscore_case

Bu gerçekten beni çok fazla rahatsız etmiyor, ama bu çok yanlış, kasıtlı görünüşte oldu merak ediyorum. En azından alt çizgi ile mümkün tutarlılığı korumak için:

var featured_product = $('#featured_product'); // instead of
var featuredProduct = $('#featured-product');

Farkları 28* *gereksiz yere, böcekler için potansiyel ile yapmak zorundayız durumlar oluşturmak.

Soruyorum: Neden toplumun neredeyse evrensel tire razı mı ağır basar ve " eğer herhangi bir sebep var mı?

Bu başladığında arkasından related question var, ama olmadığını görüşünde değilimolmamalıedilmiştir) zevk meselesi sadece. Eğer gerçekten sadece zevk meselesi olsaydı biz bu Sözleşme üzerinde anlaşıldı neden anlamak istiyorum.

CEVAP
26 EYLÜL 2011, PAZARTESİ


Kod tamamlama

Çizgi opak bir tanımlayıcı seçim editörü bağlı olarak noktalama işareti olarak yorumlanır ya da olup olmadığını, sanırım. Ancak, kişisel bir tercih olarak, her kelime arasında sekme için güçlü olmak bir CSS dosyası içinde iyilik ve eğer durur ve vardı hiçbir alt çizgi ile ayrılmış olsalar rahatsız edici bulur.

Aynı zamanda, tire kullanarak herhangi bir öğe metin içeren seçer |= attribute selector, isteğe bağlı olarak bir çizgi izledi: avantaj sağlar

span[class|="em"] { font-style: italic; }

Bu aşağıdaki HTML elemanları var italik yazı tipi stili yapar:

<span class="em">I'm italic</span>
<span class="em-strong">I'm italic too</span>

Aritmetik operatör ile belirsizlik

JavaScript nokta gösterim) elemanları HTML erişim bir hata değil, bir özellik olduğunu söyleyebilirim. Korkunç bir JavaScript uygulamaları ilk günlerinden itibaren inşa korkunç bir şey ve gerçekten harika bir uygulama değil. JavaScript ile yaptığın şeyler çoğu için bu gün, bütün nokta gösteriminde oldukça kullanışsız olduğu DOM neyse, getirilirken elemanları için CSS Selectors kullanmalısın. Hangisini tercih edersiniz?

var firstName = $('#first-name');
var firstName = document.querySelector('#first-name');
var firstName = document.forms[0].first_name;

Özellikle '#first-name' JavaScript değişkeni ile değiştirilebilir ve dinamik olarak inşa edilmiş bu yana ilk iki seçenek çok daha tercih edilebilir buluyorum. Ben de onları göze daha hoş buluyorum.

Aslında bu Şımarıklık sağlar aritmetik uzantıları için CSS değil gerçekten uygulamak için CSS kendisi, ama ben anlıyorum (ve kucaklamak gerçeği, Sass şöyle dile stil CSS (hariç için $ önek değişkenleri, hangi ders olmalı @). Eğer Sass belgeleri bakın ve CSS belgeleri gibi hissetmek istiyorsanız, bir ayırıcı çizgi olarak kullandığı CSS, aynı tarzı takip etmek gerekir. İçinde CSS3, aritmetik kendisi CSS, bu bir sorun olmadığını gösteriyor calc işlevi sınırlıdır.

Diller arasında değişken adlandırma ile tutarsızlık

Tüm diller, diller, programlama dilleri, tasarım dilleri veya betik dilleri, kendi tarzı var. XSLT örneğin kullanır tire sınırlayıcıları ile-küçük harf ve XML Schema deve-kasa kullandığı XML gibi dil gruplarının alt dilleri, içinde bulacaksınız.

Genel olarak, sen-ecek bulmak benimseyen stil hissediyor ve görünüyor en "yerli" dili yazıyorsun olduğunu daha iyi çalışıyor shoe-horn kendi tarzı içine her farklı bir dil. Beri seni kaçamazsın olması için kullanın yerel kütüphaneler ve dil yapıları, senin tarzın olacak "kirli" style olsun senin gibi ya da değil, bu yüzden hemen hemen beyhude deneyecek.

Benim tavsiyem diller arasında bir favori tarzı bulmak için değil, ama onun yerine, kendini evinde her dil içinde olun ve kendi tuhaflıklar tüm sevmeyi öğrenmektir. CSS' tuhaflıklar anahtar sözcükler ve tanımlayıcılar küçük harflerle yazılmış ve tire ile ayrılmış. Şahsen ben bunu çok görsel olarak çekici bulmak ve tüm küçük hayır-tire rağmen) HTML ile uyuyor sanırım.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • CodingMadeEasy

    CodingMadeEa

    25 EYLÜL 2010
  • SoundHound

    SoundHound

    8 Mart 2006
  • WoodysGamertag

    WoodysGamert

    17 Aralık 2009