Class StrictCss2
- java.lang.Object
-
- com.google.common.css.compiler.ast.DefaultTreeVisitor
-
- com.google.common.css.compiler.passes.StrictCssBase
-
- com.google.common.css.compiler.passes.StrictCss2
-
- All Implemented Interfaces:
AtRuleHandler,CssCompilerPass,CssTreeVisitor
public class StrictCss2 extends StrictCssBase
This compiler pass enforces that only correct CSS 2.1 is used. See "http://www.w3.org/TR/CSS21/" for the specification.
-
-
Field Summary
-
Fields inherited from class com.google.common.css.compiler.passes.StrictCssBase
errorManager, visitController
-
-
Constructor Summary
Constructors Constructor Description StrictCss2(VisitController visitController, ErrorManager errorManager)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanenterAttributeSelector(CssAttributeSelectorNode node)Ensures that attribute selectors are valid.booleanenterCombinator(CssCombinatorNode combinator)Ensures that the combinator '~' (introduced in CSS 3) is not used.booleanenterPseudoClass(CssPseudoClassNode node)Ensures that only pseudo-classes valid in CSS 2.1 are used.booleanenterPseudoElement(CssPseudoElementNode node)Ensures that the new pseudo-element notation (::) is not used, because the notation has been introduced in CSS 3.-
Methods inherited from class com.google.common.css.compiler.passes.StrictCssBase
enterValueNode, reportUnsupported, runPass
-
Methods inherited from class com.google.common.css.compiler.ast.DefaultTreeVisitor
enterArgumentNode, enterBlock, enterCharSet, enterClassSelector, enterComponent, enterCompositeValueNode, enterCompositeValueNodeOperator, enterConditionalBlock, enterConditionalRule, enterDeclaration, enterDeclarationBlock, enterDefinition, enterFontFace, enterForLoop, enterFunctionNode, enterIdSelector, enterImportBlock, enterImportRule, enterKey, enterKeyBlock, enterKeyframeRuleset, enterKeyframesRule, enterMediaRule, enterMediaTypeListDelimiter, enterMixin, enterMixinDefinition, enterPageRule, enterPageSelector, enterPropertyValue, enterProvideNode, enterRequireNode, enterRuleset, enterSelector, enterSelectorBlock, enterTree, enterUnknownAtRule, leaveArgumentNode, leaveAttributeSelector, leaveBlock, leaveCharSet, leaveClassSelector, leaveCombinator, leaveComponent, leaveCompositeValueNode, leaveCompositeValueNodeOperator, leaveConditionalBlock, leaveConditionalRule, leaveDeclaration, leaveDeclarationBlock, leaveDefinition, leaveFontFace, leaveForLoop, leaveFunctionNode, leaveIdSelector, leaveImportBlock, leaveImportRule, leaveKey, leaveKeyBlock, leaveKeyframeRuleset, leaveKeyframesRule, leaveMediaRule, leaveMediaTypeListDelimiter, leaveMixin, leaveMixinDefinition, leavePageRule, leavePageSelector, leavePropertyValue, leaveProvideNode, leavePseudoClass, leavePseudoElement, leaveRequireNode, leaveRuleset, leaveSelector, leaveSelectorBlock, leaveTree, leaveUnknownAtRule, leaveValueNode
-
-
-
-
Constructor Detail
-
StrictCss2
public StrictCss2(VisitController visitController, ErrorManager errorManager)
-
-
Method Detail
-
enterCombinator
public boolean enterCombinator(CssCombinatorNode combinator)
Ensures that the combinator '~' (introduced in CSS 3) is not used.- Specified by:
enterCombinatorin interfaceCssTreeVisitor- Overrides:
enterCombinatorin classDefaultTreeVisitor
-
enterPseudoClass
public boolean enterPseudoClass(CssPseudoClassNode node)
Ensures that only pseudo-classes valid in CSS 2.1 are used. Especially, the new pseudo-classes introduced in CSS 3 are not valid.- Specified by:
enterPseudoClassin interfaceCssTreeVisitor- Overrides:
enterPseudoClassin classDefaultTreeVisitor
-
enterPseudoElement
public boolean enterPseudoElement(CssPseudoElementNode node)
Ensures that the new pseudo-element notation (::) is not used, because the notation has been introduced in CSS 3.- Specified by:
enterPseudoElementin interfaceCssTreeVisitor- Overrides:
enterPseudoElementin classDefaultTreeVisitor
-
enterAttributeSelector
public boolean enterAttributeSelector(CssAttributeSelectorNode node)
Ensures that attribute selectors are valid. If the equal sign is preceded by a special character, only '~' and '|' are allowed. Valid CSS 2.1 examples:[att],[att=val],[att~=val],[att|=val]- Specified by:
enterAttributeSelectorin interfaceCssTreeVisitor- Overrides:
enterAttributeSelectorin classDefaultTreeVisitor
-
-