

Widevine is the defacto standard proprietary technology for DRM-locked content. It’s used by all the major streaming services like Netflix and Disney+. Without it, publishers would not make their content available to those platforms for fear of rampant piracy, especially for high quality and 4K content. I guess Widevine requires some sort of vetted relationship with any browser that wants to use their tech.


















This is true of other dynamic languages. For example, Python will also allow you to add arbitrary properties to objects without complaining.
As others have mentioned, you need to read MDN, and more specifically, understand the browser APIs and DOM structure. When you have an HTMLElement, you should know that you need to set style properties on
.style, and you should know that.styleis a CSSStyleProperties object which uses camelCased version of the CSS property names, and each property takes a certain type of value, like the various value types for the width property, which include length values, percentage values and keyword values.One of the main skills of being a frontend developer is learning this object model. It doesn’t make sense to complain about it, because that is the job.
Trial and error is not an efficient way to learn. You should at the very least experiment in the browser with the dev tools open. Have a hypothesis for how something should work (like changing a particular property), try making the change and observe the effect on the webpage and in the dev tool inspector, and if your hypothesis is wrong, understand why and update your mental model. The goal is to avoid using trial and error eventually and build an understanding instead.