CssBackgroundProperty
More information available at:
https://developer.mozilla.org/en-US/docs/Web/CSS/background
using AngleSharp.Css;
using AngleSharp.Extensions;
namespace AngleSharp.Dom.Css
{
internal sealed class CssBackgroundProperty : CssShorthandProperty
{
private static readonly IValueConverter NormalLayerConverter = Converters.WithAny(Converters.OptionalImageSourceConverter.Option().For(PropertyNames.BackgroundImage), Converters.WithOrder(Converters.PointConverter.Option().For(PropertyNames.BackgroundPosition), Converters.BackgroundSizeConverter.StartsWithDelimiter().Option().For(PropertyNames.BackgroundSize)), Converters.BackgroundRepeatsConverter.Option().For(PropertyNames.BackgroundRepeat), Converters.BackgroundAttachmentConverter.Option().For(PropertyNames.BackgroundAttachment), Converters.BoxModelConverter.Option().For(PropertyNames.BackgroundOrigin), Converters.BoxModelConverter.Option().For(PropertyNames.BackgroundClip));
private static readonly IValueConverter FinalLayerConverter = Converters.WithAny(Converters.OptionalImageSourceConverter.Option().For(PropertyNames.BackgroundImage), Converters.WithOrder(Converters.PointConverter.Option().For(PropertyNames.BackgroundPosition), Converters.BackgroundSizeConverter.StartsWithDelimiter().Option().For(PropertyNames.BackgroundSize)), Converters.BackgroundRepeatsConverter.Option().For(PropertyNames.BackgroundRepeat), Converters.BackgroundAttachmentConverter.Option().For(PropertyNames.BackgroundAttachment), Converters.BoxModelConverter.Option().For(PropertyNames.BackgroundOrigin), Converters.BoxModelConverter.Option().For(PropertyNames.BackgroundClip), Converters.CurrentColorConverter.Option().For(PropertyNames.BackgroundColor));
private static readonly IValueConverter StyleConverter = NormalLayerConverter.RequiresEnd(FinalLayerConverter).OrDefault();
internal override IValueConverter Converter => StyleConverter;
internal CssBackgroundProperty()
: base(PropertyNames.Background, PropertyFlags.Animatable)
{
}
}
}