Is it possible to use 2 CSS classes that have the same name for the selectors, etc. in the same HTML file? If so, how do you differentiate between the two when styling elements?
Yes it is possible. The definitions in second file will overwrite the definitions of the first file. There is no way to differentiate between the two but to prepend the class names according to the file.
do you mean 2 definitions for the same class? or 2 class names on an element?
The first case, no.
<style>
.foo{
border:1px solid blue;
color:red;
}
.foo{
border:4px solid orange;
}
</style>
<div class="foo">this will have an orange border and red text (no blue border)</div>
The second case, yes
<div class="class1 class2">this is valid</div>
...that have similar names for the selectors
If the names really are similar and not identical then there shouldn't be a problem.
Yes this is possible, simply include two css files in the HEAD section of the document. Any styles set in the first will be overwritten in the second, so say you have this:
First file:
#something{
background-color: #F00;
color: #FFF;
}
And then in the second file:
#something{
background-color: #000;
}
Then the background color for #something will be overwritten in the second file to black but the color will stay the same since the second file doesn't say anything about it.