It is quite common to have multiple references to the same element in your stylesheets. This occurrence is frequent when dealing with separate style sheets for different aspects of a design or when utilizing a CMS with default and themed styles stored separately.
We often see websites combining all their stylesheets into one file to reduce server load during downloads.
As a result of these practices, it is not unusual for a single stylesheet to contain multiple repetitions of a tag, class, or ID. The good news is that CSS will handle duplicates as if they were combined. If you have identical styles specified in different declarations, the latter one will take precedence over the former. This behavior allows theme styles to override default CMS styles.
The only time this rule does not apply is when using the !important
marker, which gives priority to the specific declaration marked as important over any others.
In response to part B of your question, no, the styles loaded externally via a CSS file are equivalent to those loaded inline within the main HTML page.
Typically, it is recommended to load styles from external CSS files most of the time because these files can be cached separately by the browser, reducing server workload when users navigate through different pages on your site.