There definitely
are a couple of annoying details. For instance visual mouse lag (when dragging items around) in WebGL and WebGPU can be higher than in a well written native application (just one or two additional frames of latency make a huge difference). Then there's WebGL2 being stuck on a GPU feature set from ca 2 decades ago, and WebGPU starting at a feature set from about a decade ago (and not being quite ready yet anyway).
Then there's also annoying differences between browsers when capturing the mouse - which is needed for camera controls (all browsers show some sort of popup while the mouse is captured, with Safari even shifting the canvas around).
TL;DR: it's possible in theory, but can be very annoying when actually trying to do it, mostly because most web APIs are badly designed (WebGL2 and WebGPU are notable exceptions, but they still lag far behind native 3D APIs).