display: flow-root

- CR

The element generates a block container box, and lays out its contents using flow layout. It always establishes a new block formatting context for its contents. It provides a better solution to the most use cases of the "clearfix" hack.

Chrome

  1. ❌ 4 - 57: Not supported
  2. ✅ 58 - 156: Supported
  3. ✅ 157: Supported
  4. ✅ 158 - 160: Supported

Edge

  1. ❌ 12 - 18: Not supported
  2. ✅ 79 - 155: Supported
  3. ✅ 156: Supported

Safari

  1. ❌ 3.1 - 12.1: Not supported
  2. ✅ 13 - 27.1: Supported
  3. ✅ 27.2: Supported
  4. ✅ 27.3 - TP: Supported

Firefox

  1. ❌ 2 - 52: Not supported
  2. ✅ 53 - 159: Supported
  3. ✅ 160: Supported
  4. ✅ 161 - 163: Supported

Opera

  1. ❌ 9 - 44: Not supported
  2. ✅ 45 - 138: Supported
  3. ✅ 139: Supported

IE

  1. ❌ 5.5 - 10: Not supported
  2. ❌ 11: Not supported

Chrome for Android

  1. ✅ 157: Supported

Safari on iOS

  1. ❌ 3.2 - 12.5: Not supported
  2. ✅ 13 - 26.6: Supported
  3. ✅ 27.0: Supported
  4. ✅ 27.1 - 27.2: Supported

Samsung Internet

  1. ❌ 4 - 6.4: Not supported
  2. ✅ 7.2 - 30: Supported
  3. ✅ 31: Supported

Opera Mini

  1. ❌ all: Not supported

Opera Mobile

  1. ❌ 10 - 12.1: Not supported
  2. ✅ 80: Supported

UC Browser for Android

  1. ✅ 15.5: Supported

Android Browser

  1. ❌ 2.1 - 4.4.4: Not supported
  2. ✅ 157: Supported

Firefox for Android

  1. ✅ 160: Supported

QQ Browser

  1. ✅ 14.9: Supported

Baidu Browser

  1. ✅ 13.52: Supported

KaiOS Browser

  1. ❌ 2.5: Not supported
  2. ✅ 3: Supported
Resources:
Chromium bug report
WebKit bug report
Mozilla bug report
Blog post: "The end of the clearfix hack?"