CSS has come a long way since the early days of web development, when tables and various other hacks were used for layout and positioning. Today’s developers can enjoy writing CSS that works in all major browsers, without having to bend over backwards to implement tricky layout requirements. Not only does this make it easier to create dynamic layouts, but it also allows you to ship smaller (and simpler) stylesheets by removing unnecessary cruft. In this article, we’ll look at various scenarios where modern techniques can reduce the complexity of your code and allow you to write better CSS.