Namespace Egami.Css
Classes
- CssCalc
A length, percentage or number that may be a math function:
calc()with+ - * /and parentheses, andmin(),max()andclamp()(CSS Values 4), nested freely. A plain length or number parses too, so a consumer can handle every<length-percentage>the same way. Resolve(Func<CssUnit, double>) turns it into pixels once the consumer knows what each unit is worth.
- CssCascade
The cascade (CSS Cascade 5, without animations, transitions and cascade layers): finds the declarations that apply to an element (or, for
@pagerules, a page) and picks the winner for each property.
- CssCascadeOptions
Options for building a CssCascade.
- CssCascadedStyle
The cascaded style of an element: the winning declaration of each property, with its origin.
- CssComponentValue
A CSS Syntax 3 component value: a preserved token, a function or a simple block. Declarations, preludes and values are lists of these. ToString() serializes back to CSS text.
- CssComputedStyle
An element's computed style, as far as CSS defines it generically: CSS-wide keywords resolved, inheritance applied, custom properties and
var()substituted. Values stay component values; the consumer parses each property by its type (and resolves relative units, percentages andcurrentcolor).
- CssDeclaration
A CSS declaration: a property name, its value as component values, and whether it is
!important.
- CssFont
The
fontshorthand (CSS Fonts 4), parsed.
- CssFontFace
The descriptors of an
@font-facerule (CSS Fonts 4), parsed. Invalid descriptors keep their defaults.
- CssFontFaceRule
An
@font-facerule.
- CssFontFamilyList
A
font-familyvalue: family names (quoted, or unquoted identifier sequences) and generic families.
- CssFontSource
One source of an
@font-facesrcdescriptor: a URL with its format and technologies, or a local font.
- CssFunction
A function: its name and its arguments up to the closing parenthesis.
- CssImportRule
An
@importrule. Egami.Css does not fetch it: the consumer may load the sheet and pass it to the cascade.
- CssLayerRule
An
@layerrule: a statement naming layers, or a block of rules. Cascade layers are not implemented: the cascade treats the rules inside a layer block as ordinary rules in their place.
- CssMatrixTransform
matrix(a, b, c, d, e, f).
- CssMediaContext
The environment media queries are evaluated against: the media type, the viewport and the user's preferences.
- CssMediaQueryList
A media query list (Media Queries 4), such as
screen and (min-width: 600px), print.
- CssMediaRule
An
@mediarule: rules that apply when the media query list matches.
- CssNamespaceRule
An
@namespacerule: a prefix (or the default namespace) for selectors.
- CssNamespaces
The namespace prefixes selectors may use (
svg|rect,[xlink|href]) and the default namespace for type selectors, as@namespacerules declare them. Prefixes are case-sensitive.
- CssPageMarginRule
A page-margin rule inside
@page, such as@bottom-center { content: counter(page) }.
- CssPageRule
An
@pagerule (CSS Paged Media 3): page selectors, the declarations for the page context (size,margin,padding,border,background, inherited text properties) and its page-margin rules.
- CssPageSelector
One selector of an
@pagerule, such aschapter:first.
- CssPageStyle
The cascaded style of one page: the page context's winning declarations and those of each page-margin box any rule styles. Compute the page context with the root element's computed style as its parent, and each margin box with the page context's computed style as its parent.
- CssParseError
A problem found while parsing CSS. Parsing recovers as CSS Syntax 3 says and goes on.
- CssParseOptions
Options for parsing CSS.
- CssPropertyDefinition
A longhand property the cascade knows: whether it inherits, its initial value, and optionally how to validate a value.
- CssPropertyRegistry
The properties the cascade knows. CreateDefault() gives the common text properties of CSS; consumers add their own, such as Egami.Svg's
fillandstroke. Unregistered properties cascade too, as non-inherited properties without an initial value. Do not change a registry while a cascade built from it is in use.
- CssRotateTransform
rotate(angle), or SVG'srotate(angle cx cy)about a center.
- CssRule
A rule of a style sheet.
- CssScaleTransform
scale(),scaleX()orscaleY()(percentages are converted to factors).
- CssSelector
One complex selector of a selector list, such as
svg|g > rect.highlight:first-child.
- CssSelectorList
A selector list (Selectors 4), such as a style rule's prelude or the argument of
querySelectorAll.
- CssShorthandDefinition
A shorthand property: its longhands and how to expand a value into them.
- CssSimpleBlock
A simple block: content between matching
(),[]or{}.
- CssSkewTransform
skew(),skewX()orskewY().
- CssStyleRule
A style rule: a selector list and declarations, such as
rect.a { fill: red }.
- CssStyleSheet
A parsed CSS style sheet (CSS Syntax 3 "parse a stylesheet", with the rules CSS defines interpreted).
- CssSupportsRule
An
@supportsrule: rules that apply when the condition holds.
- CssTokenValue
A token kept as a component value: any token other than a function or an opening bracket.
- CssTokenizer
The CSS Syntax 3 tokenizer (section 4), with its input preprocessing.
- CssTransformFunction
One transform function of a CssTransformList.
- CssTransformList
A CSS
transformvalue (CSS Transforms 1), or SVG'stransformattribute: a list of transform functions applied left to right, as nested coordinate systems.
- CssTranslateTransform
translate(),translateX()ortranslateY().
- CssUnknownAtRule
An at-rule Egami.Css does not interpret, such as
@keyframesor@counter-style, kept as component values.
- CssUnsupportedTransform
A 3D transform function (such as
rotateX()ormatrix3d()) that parsed but a 2D renderer cannot apply.
Structs
- CssAngle
An angle, converted to degrees from deg, grad, rad or turn.
- CssAttribute
An attribute of an element, as Attributes lists it.
- CssColor
A CSS color (CSS Color 4) converted to sRGB: red, green, blue and alpha from 0 to 1, gamma-encoded, clipped to the sRGB gamut; or
currentcolor.
- CssFontFamily
One entry of a font family list: a family name or a generic family keyword.
- CssFontWeight
A
font-weightvalue.
- CssLength
A length (or percentage, or unitless number) with its unit, such as
12pxor50%.
- CssPage
A page being laid out, as page selectors see it: its page type (the
pageproperty of the content that starts it) and whether it is the first, a left or a blank page.
- CssPageSize
The
sizedescriptor of@page(CSS Paged Media 3 section 7.1):auto, one or two lengths, or a page size name such asA4orletterwith an optional orientation.
- CssRange
A range of numbers, such as a weight range
100 900; a single value has equal ends.
- CssSpecificity
A selector's specificity (Selectors 4): IDs, then classes, attributes and pseudo-classes, then types and pseudo-elements.
- CssToken
One CSS token, with its position in the source.
- CssTransformOrigin
A
transform-originvalue.
- CssUnicodeRange
A range of code points from
unicode-range, such asU+0000-00FF.
- CssUrl
A URL from
url(...)(quoted or not) orsrc(...).
Interfaces
- ICssElement
An element that selectors match against: implemented by a document tree such as Egami.Svg's or an HTML DOM.
Enums
- CssFontWeightKind
How a CssFontWeight was given.
- CssMarginBox
The sixteen page-margin boxes around a page's content (CSS Paged Media 3 section 5.1), clockwise from the top left.
- CssOrigin
The origin of a style sheet in the cascade.
- CssPageOrientation
Whether a page size asks for portrait or landscape pages.
- CssPagePseudoClasses
The page pseudo-classes a page selector tests (CSS Paged Media 3 section 4.3).
- CssTokenKind
The kinds of token the CSS Syntax 3 tokenizer produces.