As discussed in a response on Stack Overflow, one reason for the necessity of vendor prefixes in CSS properties is to prevent web pages from breaking even if the final specification varies from the implementation by different browsers.
In a recent reading, it was suggested that a best practice is to include non-prefixed property declarations after their respective vendor-prefixed counterparts. This can be seen in the example below:
p {
-webkit-hyphens: auto;
-moz-hyphens: auto;
-ms-hyphens: auto;
-o-hyphens: auto;
hyphens: auto;
}
However, if the finalized specification for a property differs significantly from how various vendors have implemented it, wouldn't this approach result in design issues on webpages relying on these prefixes? If the interpretations align with the final specs, then this coding style would be effective. So, why is placing non-prefixed properties after vendor-prefixed ones considered good practice?