The Progressive Enhancement (PE) development model is gradually becoming a best practice for standards-based design. Starting with clean, semantic HTML markup and progressively enhancing it with JavaScript and CSS, we aim to create usable experiences for any audience. For devices and browsers with limited capabilities, this approach provides a relatively simple but fully functional user experience, while more capable ones receive additional features and enhancements.
This is the basic theory of PE (Progressive Enhancement, abbreviated as PE). However, in practice, these enhancements are still delivered to the majority of devices, including many that do not support these features, such as older browser versions or feature-limited mobile clients. These devices initially receive a simple yet fully functional page, but are then "enhanced" into a messy one. This clearly goes against the principles of PE.