Datalist element

- LS

Method of setting a list of options for a user to select in a text field, while leaving the ability to enter a custom value.

Chrome

  1. 4 - 19: Not supported (but has polyfill available)
  2. 20 - 68: Partial support
  3. 69 - 121: Supported
  4. 122: Supported
  5. 123 - 125: Supported

Edge

  1. 12 - 15: Partial support
  2. 16 - 18: Partial support
  3. 79 - 121: Supported
  4. 122: Supported

Safari

  1. 3.1 - 12: Not supported (but has polyfill available)
  2. 12.1 - 17.3: Supported
  3. 17.4: Supported
  4. TP: Supported

Firefox

  1. 2 - 3.6: Not supported (but has polyfill available)
  2. 4 - 101: Partial support
  3. 102 - 109: Partial support
  4. 110 - 122: Supported
  5. 123: Supported
  6. 124 - 126: Supported

Opera

  1. 9 - 12.1: Supported
  2. 15 - 63: Partial support
  3. 64 - 107: Supported
  4. 108: Supported

IE

  1. 5.5: Not supported
  2. 6 - 9: Not supported (but has polyfill available)
  3. 10: Partial support
  4. 11: Partial support

Chrome for Android

  1. 122: Supported

Safari on iOS

  1. 3.2 - 12.1: Not supported (but has polyfill available)
  2. 12.2 - 17.3: Supported
  3. 17.4: Supported

Samsung Internet

  1. 4 - 22: Supported
  2. 23: Supported

Opera Mini

  1. all: Not supported

Opera Mobile

  1. 10 - 12.1: Supported
  2. 80: Supported

UC Browser for Android

  1. 15.5: Supported

Android Browser

  1. 2.1 - 4.4: Not supported (but has polyfill available)
  2. 4.4.3: Supported
  3. 122: Supported

Firefox for Android

  1. 123: Not supported

QQ Browser

  1. 14.9: Supported

Baidu Browser

  1. 13.52: Supported

KaiOS Browser

  1. 2.5: Not supported
  2. 3: Not supported

While most commonly used on text fields, datalists can also be used on other input types. IE11 supports the element on range fields. Chrome and Opera also support datalists to suggest given values on range, color and date/time fields.

Resources:
HTML5 Library including datalist support
Eiji Kitamura's options demos & tests
MDN Web Docs - datalist
Minimal and library dependency-free vanilla JavaScript polyfill
Minimal Datalist polyfill w/tutorial
Mozilla Hacks article
WebPlatform Docs