AngleSharp by Florian Rappl

<PackageReference Include="AngleSharp" Version="0.5.0" />

.NET API 681,472 bytes

 HTMLStyleElement

public sealed class HTMLStyleElement : HTMLElement, IStyleSheet
Represents the HTML style element.
using AngleSharp.DOM.Css; using System; namespace AngleSharp.DOM.Html { [DOM("HTMLStyleElement")] public sealed class HTMLStyleElement : HTMLElement, IStyleSheet { private CSSStyleSheet _sheet; [DOM("sheet")] public StyleSheet Sheet { get { return _sheet; } } [DOM("disabled")] public bool Disabled { get { return Sheet.Disabled; } set { Sheet.Disabled = value; } } [DOM("media")] public string Media { get { return GetAttribute(AttributeNames.Media); } set { SetAttribute(AttributeNames.Media, value); } } [DOM("type")] public string Type { get { return GetAttribute(AttributeNames.Type); } set { SetAttribute(AttributeNames.Type, value); } } protected internal override bool IsSpecial => true; internal HTMLStyleElement() { _name = "style"; _sheet = new CSSStyleSheet(); _sheet.OwnerNode = this; _children.ElementsChanged += OnChildrenChanged; } public override string ToText() { return string.Empty; } private void OnChildrenChanged(object sender, EventArgs e) { _sheet.ReevaluateFromSource(TextContent); } internal override void OnAttributeChanged(string name) { if (name.Equals(AttributeNames.Media, StringComparison.Ordinal)) _sheet.Media.MediaText = Media; else base.OnAttributeChanged(name); } } }