Overview

Eric Meyer defends CSS against common criticism that it’s “bloated,” arguing instead that CSS’s complexity reflects its ambitious scope in handling the entirety of visual web presentation. He emphasizes that CSS deserves respect for attempting to express visual design, layout, typography, animation, and interactivity in human-readable text format.

Key Arguments

  • **CSS isn’t bloated - it’s appropriately complex for its massive scope. The language attempts to handle the totality of visual presentation, layout design, typography, animation, and digital interactivity.**: Meyer argues that what people perceive as ‘bloat’ is actually the natural result of CSS trying to solve an incredibly broad set of design challenges in a single, human-readable format.
  • **CSS’s ambition exceeds most developers’ understanding. Its reach is greater than most can grasp, making it appear unnecessarily complex.**: Meyer suggests that criticism of CSS often stems from developers not fully appreciating the breadth of problems CSS is designed to solve across all aspects of web presentation.
  • **CSS deserves respect and recognition for its achievements. The language successfully bridges human creativity and machine implementation.**: Rather than dismissing CSS as bloated, Meyer argues we should appreciate how it makes complex visual concepts expressible in readable text that browsers can interpret.

Implications

Web developers should reframe their relationship with CSS complexity - instead of viewing it as unnecessarily bloated, recognize that mastering CSS means understanding one of the most ambitious attempts to codify visual design principles. This perspective shift can lead to greater appreciation for CSS’s capabilities and more patience when learning its intricacies.

Counterpoints

  • CSS syntax and concepts are genuinely difficult to learn and master: Many developers struggle with CSS specificity, layout models, and cross-browser compatibility issues, making the ‘bloated’ criticism understandable from a usability perspective.
  • CSS could be better designed with clearer, more intuitive syntax: Some argue that CSS’s complexity isn’t just from scope but from historical decisions and backwards compatibility requirements that created confusing patterns.