Recently, I proposed to my team the idea of using dashes (hyphens) for our class names and underscores for our IDs. For IDs, I suggested following a naming convention where the element tag is separated from the rest of the ID name by an underscore, resulting in ID names that look like #element_class-name. An example would be:
<div id="div_generic-name" class="generic-name">Stuff</div>
Are there any potential issues with this approach? What are the consequences of mixing underscores and hyphens in our code?