Читал, что class и id правильно писать так: color-picker selected-color, неправильно вот так color_picker selected_color.
Но когда пишу на js довольно удобно пользоваться записями без тире
color_picker.style.display = ""
Недавно увидел что пишут еще таким способом:
class="colorPicker" id="selectedColor"
На сколько это правильно? И вообще что нужно использовать?
Очень благодарен понятные за ответы, особенно с объяснениями.
Как именовать обычно зависит от предпочтений программиста или от того как принято в команде, но главное чтобы в проекте все было одинаково, а не так что в каждом месте по разному.
Посмотрите методологию именования в БЭМ https://ru.bem.info/methodology/naming-convention/
В целом про стиль программирования на js https://github.com/airbnb/javascript
Советую почитать вам о БЭМ структуре, которую в последнее время многие используют.
Правильно - это так, как разрешает спецификация. Спецификация никак не регламентирует как должны составляться имена классов и идентификаторов, устанавливая только допустимые символы.
Таким образом - правильны все варианты.
Какой именно подход использовать и для чего, каждый определяет сам.
Выбор может так же обуславливаться правилами принятыми в конкретной группе.
Ест такое понятие, как конвенции, нарушение которых считается дурным тоном. Поэтому лучше писать так, как принято, то есть через дефис some-class.
Если говорить об id, то из-за того что он обязан быть уникальным на все область видимости, его следует использовать только тогда, когда это действительно необходимо. Как например связь label и input, как связь компонентов в фраймворках подобных bootstrap3.
И раз зашел разговор о именовании, то нельзя не упомянуть о такой методологии названия css классов, как БЭМ.
В большинстве случаев, эта методология может заведомо избавить от множества проблем и даже способствовать лучшему пониманию написания компонентов.
Сборка персонального компьютера от Artline: умный выбор для современных пользователей