The examples on https://codepen.io/enxaneta/post/svg-waves-with-fedisplacementmap don't work in WebKit.
<rdar://problem/56049856>
This is not about CSS filters. This is about a filter inside one <svg> in html being used inside another.
This now works in Safari better than Chrome and FireFox. WebKit applies filter in the static case while other browsers do not. The reason in the static examples the filter has an <feImage> while is defined like this: <feImage result="pict2" xlink:href="#gradient"></feImage> While in the animated case, this <feImage> is defined as a data url. <feImage result="pict2" xlink:href="data:image/svg+xml;..."></feImage> WebKit handles the case of <feImage> referencing another SVG element correctly.