Nie ma jednego
Cały czas używam podkreślników, ponieważ łączniki zaburzają podświetlanie składni mojego edytora tekstów (Gedit), ale taka jest osobista preferencja.
Widziałem wszystkie te konwencje stosowane wszędzie. Użyj tego, co uważasz za najlepsze - tego, które wygląda najlepiej dla Ciebie / najłatwiejsze do przeczytania, a także najłatwiejsze do pisania, ponieważ będziesz go często używać. Na przykład, jeśli masz klawisz podkreślenia na spodzie klawiatury (mało prawdopodobne, ale całkowicie możliwe), trzymaj się łączników. Po prostu idź z tym, co najlepsze dla siebie. Ponadto wszystkie 3 z tych konwencji są łatwo czytelne. Jeśli pracujesz w zespole, pamiętaj o przestrzeganiu konwencji określonej przez zespół (jeśli istnieje).
Aktualizacja 2012
Z czasem zmieniłem sposób programowania. Teraz używam teraz wielbłąda ( thisIsASelector
) zamiast łączników; Uważam to drugie za raczej brzydkie. Używaj tego , co wolisz, co z czasem może się łatwo zmienić.
Aktualizacja 2013
Wygląda na to, że lubię mieszać co roku ... Po przejściu na Sublime Text i użyciu Bootstrap przez jakiś czas wróciłem do myślników. Dla mnie teraz wyglądają o wiele czystiej niż un_der_scores lub camelCase. Moja pierwotna uwaga jest nadal aktualna: nie ma standardu.
Aktualizacja 2015
Ciekawym narożnikiem z konwencjami jest tutaj Rust . Naprawdę podoba mi się ten język, ale kompilator ostrzeże Cię, jeśli zdefiniujesz coś przy użyciu czegoś innego niż underscore_case
. Możesz wyłączyć ostrzeżenie, ale interesujące jest to, że kompilator zdecydowanie sugeruje konwencję domyślnie. Wyobrażam sobie, że w większych projektach prowadzi to do czystszego kodu, co nie jest niczym złym.
Aktualizować 2016 ( pan poprosił o nim)
Przyjęłam standard BEM dla moich projektów na przyszłość. Nazwy klas są dość szczegółowe, ale myślę, że zapewnia dobrą strukturę i możliwość ponownego wykorzystania klas i CSS, które się z nimi wiążą. Podejrzewam, że BEM jest w rzeczywistości standardem (więc mój no
staje się yes
być może), ale nadal zależy od ciebie, co zdecydujesz się wykorzystać w projekcie. Co najważniejsze: bądź zgodny z tym, co wybierzesz.
Aktualizować 2019 ( pan poprosił o nim)
Po dłuższej pracy bez pisania CSS zacząłem pracować w miejscu, które używa OOCSS w jednym z ich produktów. Osobiście uważam, że dość nieprzyjemne jest zaśmiecanie klas wszędzie, ale nie muszę przeskakiwać między HTML a CSS przez cały czas, co wydaje się dość produktywne.
Nadal jednak jestem nastawiony na BEM. Jest to szczegółowe, ale dzięki przestrzeni nazw praca z komponentami React jest bardzo naturalna. Doskonale nadaje się również do wybierania określonych elementów podczas testowania w przeglądarce.
OOCSS i BEM to tylko niektóre ze standardów CSS. Wybierz taki, który Ci odpowiada - wszystkie są pełne kompromisów, ponieważ CSS po prostu nie jest tak dobry .
Aktualizacja 2020
Nudna aktualizacja w tym roku. Nadal używam BEM. Moje stanowisko nie zmieniło się tak naprawdę od aktualizacji 2019 z powodów wymienionych powyżej. Używaj tego, co działa dla Ciebie, które skaluje się wraz z rozmiarem zespołu i ukrywa tyle, albo tyle słabego zestawu funkcji CSS, ile chcesz.