Today (5/09/2018) only chrome supports customElements
They are coming to firefox
You’ll want to include the @webcomponents/custom-elements polyfill for browsers that don’t yet fully support custom elements.
If you are using Babel < 7.0 for transpiling, then you may need to use a shim to support extending HTMLElement:
import "@webcomponents/custom-elements/src/native-shim"
More info: https://leveljournal.com/server-rendered-html-in-elm