├── .gitignore
├── LICENSE
├── README.md
├── css-checks-testkit
├── pom.xml
└── src
│ └── main
│ └── java
│ └── org
│ └── sonar
│ └── css
│ └── checks
│ └── verifier
│ ├── CssCheckVerifier.java
│ ├── TestIssue.java
│ ├── TreeCheckTest.java
│ └── package-info.java
├── css-checks
├── pom.xml
└── src
│ ├── main
│ ├── java
│ │ └── org
│ │ │ └── sonar
│ │ │ └── css
│ │ │ └── checks
│ │ │ ├── AllGradientDefinitionsCheck.java
│ │ │ ├── AlphabetizeDeclarationsCheck.java
│ │ │ ├── BOMCheck.java
│ │ │ ├── BewareOfBoxModelCheck.java
│ │ │ ├── CaseCheck.java
│ │ │ ├── CaseInsensitiveFlagCheck.java
│ │ │ ├── CharsetFirstCheck.java
│ │ │ ├── CheckList.java
│ │ │ ├── CheckUtils.java
│ │ │ ├── CommentContainsPatternChecker.java
│ │ │ ├── CommentRegularExpressionCheck.java
│ │ │ ├── CompatibleVendorPrefixesCheck.java
│ │ │ ├── DeprecatedIEStaticFilterCheck.java
│ │ │ ├── DeprecatedSystemColorCheck.java
│ │ │ ├── DisplayPropertyGroupingCheck.java
│ │ │ ├── DoNotUseShorthandPropertyCheck.java
│ │ │ ├── DuplicateBackgroundImagesCheck.java
│ │ │ ├── DuplicatedPropertiesCheck.java
│ │ │ ├── EmptyDeclarationCheck.java
│ │ │ ├── EmptyRuleCheck.java
│ │ │ ├── ExperimentalAtRuleCheck.java
│ │ │ ├── ExperimentalFunctionCheck.java
│ │ │ ├── ExperimentalIdentifierCheck.java
│ │ │ ├── ExperimentalPropertyCheck.java
│ │ │ ├── ExperimentalPseudoCheck.java
│ │ │ ├── ExperimentalSelectorCombinatorCheck.java
│ │ │ ├── FixmeTagCheck.java
│ │ │ ├── FontFaceBrowserCompatibilityCheck.java
│ │ │ ├── FormattingCheck.java
│ │ │ ├── GenerateRuleDescriptionsBatch.java
│ │ │ ├── IdInSelectorCheck.java
│ │ │ ├── ImportFirstCheck.java
│ │ │ ├── ImportNumberCheck.java
│ │ │ ├── ImportUsageCheck.java
│ │ │ ├── ImportantPositionCheck.java
│ │ │ ├── ImportantUsageCheck.java
│ │ │ ├── InliningFontFileCheck.java
│ │ │ ├── LeadingZeroCheck.java
│ │ │ ├── LineLengthCheck.java
│ │ │ ├── NoSonarTagPresenceCheck.java
│ │ │ ├── NumberOfRulesPerSheetCheck.java
│ │ │ ├── ObsoleteFunctionCheck.java
│ │ │ ├── ObsoletePropertieCheck.java
│ │ │ ├── ObsoletePseudoCheck.java
│ │ │ ├── OneDeclarationPerLineCheck.java
│ │ │ ├── OverqualifiedElementCheck.java
│ │ │ ├── OverspecificSelectorCheck.java
│ │ │ ├── ParsingErrorCheck.java
│ │ │ ├── PropertyRegularExpressionCheck.java
│ │ │ ├── RuleDescriptionsGenerator.java
│ │ │ ├── SelectorLikeRegExCheck.java
│ │ │ ├── SelectorNamingConventionCheck.java
│ │ │ ├── SelectorNumberCheck.java
│ │ │ ├── SemicolonDeclarationCheck.java
│ │ │ ├── StarHackCheck.java
│ │ │ ├── TabCharacterCheck.java
│ │ │ ├── Tags.java
│ │ │ ├── TodoTagCheck.java
│ │ │ ├── TooManyWebFontsCheck.java
│ │ │ ├── TrailingWhitespaceCheck.java
│ │ │ ├── UnderscoreHackCheck.java
│ │ │ ├── UnitForZeroValueCheck.java
│ │ │ ├── UniversalSelectorCheck.java
│ │ │ ├── UnknownAtRuleCheck.java
│ │ │ ├── UnknownFunctionCheck.java
│ │ │ ├── UnknownPropertyCheck.java
│ │ │ ├── UnknownPseudoCheck.java
│ │ │ ├── UseShorthandPropertyCheck.java
│ │ │ ├── ValidatePropertyValueCheck.java
│ │ │ ├── VendorPrefixWithStandardCheck.java
│ │ │ └── package-info.java
│ └── resources
│ │ └── org
│ │ └── sonar
│ │ └── l10n
│ │ └── css
│ │ └── rules
│ │ └── css
│ │ ├── S1131.html
│ │ ├── S1134.html
│ │ ├── S1135.html
│ │ ├── S2260.html
│ │ ├── S2732.html
│ │ ├── S2735.html
│ │ ├── alphabetize-declarations.html
│ │ ├── bom-utf8-files.html
│ │ ├── box-model.html
│ │ ├── case-insensitive-flag.html
│ │ ├── case.html
│ │ ├── charset-first.html
│ │ ├── comment-regular-expression.html
│ │ ├── deprecated-ie-static-filters.html
│ │ ├── deprecated-system-colors.html
│ │ ├── display-property-grouping.html
│ │ ├── duplicate-background-images.html
│ │ ├── duplicate-properties.html
│ │ ├── empty-declaration.html
│ │ ├── empty-rules.html
│ │ ├── experimental-selector-combinator-usage.html
│ │ ├── font-face-browser-compatibility.html
│ │ ├── font-faces.html
│ │ ├── formatting.html
│ │ ├── gradients.html
│ │ ├── ids.html
│ │ ├── import-first.html
│ │ ├── import.html
│ │ ├── important-position.html
│ │ ├── important.html
│ │ ├── inlining-font-files.html
│ │ ├── known-properties.html
│ │ ├── leading-zeros.html
│ │ ├── line-length.html
│ │ ├── nosonar.html
│ │ ├── one-declaration-per-line.html
│ │ ├── overqualified-elements.html
│ │ ├── overspecific-selectors.html
│ │ ├── property-regular-expression.html
│ │ ├── regex-selectors.html
│ │ ├── selector-naming-convention.html
│ │ ├── semicolon-declaration.html
│ │ ├── sheet-too-many-rules.html
│ │ ├── star-property-hack.html
│ │ ├── tab-character.html
│ │ ├── template
│ │ ├── compatible-vendor-prefixes.html
│ │ ├── do-not-use-shorthand-properties.html
│ │ ├── experimental-atrule-usage.html
│ │ ├── experimental-function-usage.html
│ │ ├── experimental-identifier-usage.html
│ │ ├── experimental-property-usage.html
│ │ ├── experimental-pseudo-usage.html
│ │ ├── known-properties.html
│ │ ├── obsolete-functions.html
│ │ ├── obsolete-properties.html
│ │ ├── obsolete-pseudos.html
│ │ ├── shorthand.html
│ │ ├── unknown-at-rules.html
│ │ ├── unknown-functions.html
│ │ ├── unknown-pseudo.html
│ │ └── validate-property-value.html
│ │ ├── underscore-property-hack.html
│ │ ├── universal-selector.html
│ │ ├── vendor-prefix.html
│ │ └── zero-units.html
│ └── test
│ ├── java
│ └── org
│ │ └── sonar
│ │ └── css
│ │ └── checks
│ │ ├── AllGradientDefinitionsCheckTest.java
│ │ ├── AlphabetizeDeclarationsCheckTest.java
│ │ ├── BOMCheckTest.java
│ │ ├── BewareOfBoxModelTest.java
│ │ ├── CaseCheckTest.java
│ │ ├── CaseInsensitiveFlagCheckTest.java
│ │ ├── CharsetFirstCheckTest.java
│ │ ├── CheckTestUtils.java
│ │ ├── CommentRegularExpressionCheckTest.java
│ │ ├── CompatibleVendorPrefixesCheckTest.java
│ │ ├── DeprecatedIEStaticFilterCheckTest.java
│ │ ├── DeprecatedSystemColorCheckTest.java
│ │ ├── DisplayPropertyGroupingTest.java
│ │ ├── DoNotUseShorthandPropertyCheckTest.java
│ │ ├── DuplicateBackgroundImagesCheckTest.java
│ │ ├── DuplicatedPropertiesCheckTest.java
│ │ ├── EmptyDeclarationCheckTest.java
│ │ ├── EmptyRuleCheckTest.java
│ │ ├── ExperimentalAtRuleCheckTest.java
│ │ ├── ExperimentalFunctionCheckTest.java
│ │ ├── ExperimentalIdentifierCheckTest.java
│ │ ├── ExperimentalPropertyCheckTest.java
│ │ ├── ExperimentalPseudoCheckTest.java
│ │ ├── ExperimentalSelectorCombinatorCheckTest.java
│ │ ├── FixmeTagCheckTest.java
│ │ ├── FontFaceBrowserCompatibilityCheckTest.java
│ │ ├── FormattingCheckTest.java
│ │ ├── IdInSelectorCheckTest.java
│ │ ├── ImportFirstCheckTest.java
│ │ ├── ImportNumberTest.java
│ │ ├── ImportUsageCheckTest.java
│ │ ├── ImportantPositionCheckTest.java
│ │ ├── ImportantUsageCheckTest.java
│ │ ├── InliningFontFileCheckTest.java
│ │ ├── LeadingZeroCheckTest.java
│ │ ├── LineLengthCheckTest.java
│ │ ├── NosonarTagPresenceCheckTest.java
│ │ ├── NumberOfRulesPerSheetCheckTest.java
│ │ ├── ObsoleteFunctionCheckTest.java
│ │ ├── ObsoletePropertieCheckTest.java
│ │ ├── ObsoletePseudoCheckTest.java
│ │ ├── OneDeclarationPerLineCheckTest.java
│ │ ├── OverqualifiedElementCheckTest.java
│ │ ├── OverspecificSelectorCheckTest.java
│ │ ├── PropertyRegularExpressionCheckTest.java
│ │ ├── SelectorLikeRegExCheckTest.java
│ │ ├── SelectorNamingConventionCheckTest.java
│ │ ├── SelectorNumberTest.java
│ │ ├── SemicolonDeclarationCheckTest.java
│ │ ├── StartHackCheckTest.java
│ │ ├── TabCharacterCheckTest.java
│ │ ├── TodoTagCheckTest.java
│ │ ├── TooManyWebFontsCheckTest.java
│ │ ├── TrailingWhitespaceCheckTest.java
│ │ ├── UnderscoreHackCheckTest.java
│ │ ├── UnitForZeroValueCheckTest.java
│ │ ├── UniversalSelectorCheckTest.java
│ │ ├── UnknownAtRuleCheckTest.java
│ │ ├── UnknownFunctionCheckTest.java
│ │ ├── UnknownPropertyCheckTest.java
│ │ ├── UnknownPseudoCheckTest.java
│ │ ├── UseShorthandPropertyCheckTest.java
│ │ ├── ValidatePropertyValueCheckTest.java
│ │ └── VendorPrefixWithStandardCheckTest.java
│ └── resources
│ └── checks
│ ├── S2732.css
│ ├── alphabetizeDeclarations.css
│ ├── boxSizing.css
│ ├── case.css
│ ├── caseInsensitiveFlag.css
│ ├── charset
│ ├── charsetFirst.css
│ ├── charsetFirstWithBOM.css
│ └── charsetNotFirst.css
│ ├── commentRegularExpression.css
│ ├── custom
│ ├── forbiddenProperties.css
│ └── forbiddenUrl.css
│ ├── deprecatedSystemColors.css
│ ├── displayProperty.css
│ ├── doNotUseShorthandProperties.css
│ ├── duplicatebackgroundimages.css
│ ├── duplicatedProperties.css
│ ├── emptyDeclaration.css
│ ├── emptyRule.css
│ ├── experimentalAtRuleUsage.css
│ ├── experimentalFunctionUsage.css
│ ├── experimentalIdentifierUsage.css
│ ├── experimentalPropertyUsage.css
│ ├── experimentalPseudoUsage.css
│ ├── experimentalSelectorCombinatorUsage.css
│ ├── fixmeTagPresence.css
│ ├── fontface
│ ├── basic.css
│ ├── deep.css
│ └── deepest.css
│ ├── formatting
│ ├── block.css
│ ├── declaration.css
│ └── important.css
│ ├── gradientdefinition.css
│ ├── idsinselector.css
│ ├── ieStaticFilters.css
│ ├── import.css
│ ├── import
│ ├── importFirst1.css
│ ├── importFirst2.css
│ ├── importFirst3.css
│ ├── importFirst4.css
│ ├── importFirstWithCharset.css
│ ├── importNotFirst1.css
│ └── importNotFirst2.css
│ ├── importThreshold.css
│ ├── important.css
│ ├── importantPosition.css
│ ├── inliningFontFiles.css
│ ├── knownProperty.css
│ ├── leadingZeros.css
│ ├── lineLength.css
│ ├── lineLength30.css
│ ├── lineLength50.css
│ ├── maximumNumberOfRulesPerSheet10.css
│ ├── maximumNumberOfRulesPerSheet11.css
│ ├── maximumNumberOfRulesPerSheet9.css
│ ├── metrics.css
│ ├── noDuplication.css
│ ├── noParsingError.css
│ ├── nosonarTagPresence.css
│ ├── notabcharacter.css
│ ├── obsoleteFunctions.css
│ ├── obsoleteProperties.css
│ ├── obsoletePseudos.css
│ ├── oneDeclarationPerLine.css
│ ├── overqualified.css
│ ├── overspecselector.css
│ ├── overspecselectorCustom.css
│ ├── parsingError.css
│ ├── properties
│ ├── accelerator.css
│ ├── align-content.css
│ ├── align-items.css
│ ├── align-self.css
│ ├── alignment-baseline.css
│ ├── all.css
│ ├── animation-delay.css
│ ├── animation-direction.css
│ ├── animation-duration.css
│ ├── animation-fill-mode.css
│ ├── animation-iteration-count.css
│ ├── animation-name.css
│ ├── animation-play-state.css
│ ├── animation-timing-function.css
│ ├── animation.css
│ ├── backface-visibility.css
│ ├── background-attachment.css
│ ├── background-blend-mode.css
│ ├── background-clip.css
│ ├── background-color.css
│ ├── background-image.css
│ ├── background-origin.css
│ ├── background-position-x.css
│ ├── background-position-y.css
│ ├── background-position.css
│ ├── background-repeat.css
│ ├── background-size.css
│ ├── baseline-shift.css
│ ├── block-progression.css
│ ├── border-bottom-color.css
│ ├── border-bottom-left-radius.css
│ ├── border-bottom-right-radius.css
│ ├── border-bottom-style.css
│ ├── border-bottom-width.css
│ ├── border-bottom.css
│ ├── border-collapse.css
│ ├── border-color.css
│ ├── border-left-color.css
│ ├── border-left-style.css
│ ├── border-left-width.css
│ ├── border-left.css
│ ├── border-radius.css
│ ├── border-right-color.css
│ ├── border-right-style.css
│ ├── border-right-width.css
│ ├── border-right.css
│ ├── border-spacing.css
│ ├── border-style.css
│ ├── border-top-color.css
│ ├── border-top-left-radius.css
│ ├── border-top-right-radius.css
│ ├── border-top-style.css
│ ├── border-top-width.css
│ ├── border-top.css
│ ├── border-width.css
│ ├── border.css
│ ├── bottom.css
│ ├── box-decoration-break.css
│ ├── box-sizing.css
│ ├── box-snap.css
│ ├── box-suppress.css
│ ├── break-after.css
│ ├── break-before.css
│ ├── break-inside.css
│ ├── caption-side.css
│ ├── caret-color.css
│ ├── caret-shape.css
│ ├── clear.css
│ ├── clip-path.css
│ ├── clip-rule.css
│ ├── clip.css
│ ├── color-interpolation-filters.css
│ ├── color-interpolation.css
│ ├── color-rendering.css
│ ├── color.css
│ ├── column-count.css
│ ├── column-fill.css
│ ├── column-gap.css
│ ├── column-rule-color.css
│ ├── column-rule-style.css
│ ├── column-rule-width.css
│ ├── column-span.css
│ ├── column-width.css
│ ├── content-zoom-chaining.css
│ ├── content-zoom-limit-max.css
│ ├── content-zoom-limit-min.css
│ ├── content-zoom-limit.css
│ ├── content-zoom-snap-points.css
│ ├── content-zoom-snap-type.css
│ ├── content-zooming.css
│ ├── counter-increment.css
│ ├── counter-reset.css
│ ├── cue-after.css
│ ├── cue-before.css
│ ├── cue.css
│ ├── cursor.css
│ ├── device-pixel-ratio.css
│ ├── direction.css
│ ├── display.css
│ ├── dominant-baseline.css
│ ├── empty-cells.css
│ ├── fallback.css
│ ├── fill-opacity.css
│ ├── fill-rule.css
│ ├── filter.css
│ ├── flex-basis.css
│ ├── flex-direction.css
│ ├── flex-flow.css
│ ├── flex-grow.css
│ ├── flex-shrink.css
│ ├── flex-wrap.css
│ ├── float-defer.css
│ ├── float-offset.css
│ ├── float-reference.css
│ ├── float.css
│ ├── flood-color.css
│ ├── flood-opacity.css
│ ├── font-family.css
│ ├── font-language-override.css
│ ├── font-size-adjust.css
│ ├── font-size.css
│ ├── font-stretch.css
│ ├── font-style.css
│ ├── font-synthesis.css
│ ├── font-variant-caps.css
│ ├── font-variant-position.css
│ ├── font-weight.css
│ ├── footnote-display.css
│ ├── footnote-policy.css
│ ├── hanging-punctuation.css
│ ├── height.css
│ ├── high-contrast-adjust.css
│ ├── high-contrast.css
│ ├── hyphens.css
│ ├── image-rendering.css
│ ├── inline-box-align.css
│ ├── isolation.css
│ ├── justify-content.css
│ ├── kerning.css
│ ├── layout-flow.css
│ ├── layout-grid-char.css
│ ├── layout-grid-line.css
│ ├── layout-grid-mode.css
│ ├── layout-grid-type.css
│ ├── left.css
│ ├── letter-spacing.css
│ ├── lighting-color.css
│ ├── line-break.css
│ ├── line-grid.css
│ ├── line-height.css
│ ├── line-snap.css
│ ├── list-style-image.css
│ ├── list-style-position.css
│ ├── list-style-type.css
│ ├── list-style.css
│ ├── margin-bottom.css
│ ├── margin-left.css
│ ├── margin-right.css
│ ├── margin-top.css
│ ├── margin.css
│ ├── marker-end.css
│ ├── marker-mid.css
│ ├── marker-side.css
│ ├── marker-start.css
│ ├── mask-border-mode.css
│ ├── mask-border-outset.css
│ ├── mask-border-repeat.css
│ ├── mask-border-source.css
│ ├── mask-border-width.css
│ ├── mask-type.css
│ ├── max-device-pixel-ratio.css
│ ├── max-height.css
│ ├── max-lines.css
│ ├── max-width.css
│ ├── max-zoom.css
│ ├── min-device-pixel-ratio.css
│ ├── min-height.css
│ ├── min-width.css
│ ├── min-zoom.css
│ ├── mix-blend-mode.css
│ ├── nav-down.css
│ ├── nav-left.css
│ ├── nav-right.css
│ ├── nav-up.css
│ ├── object-fit.css
│ ├── offset-after.css
│ ├── offset-before.css
│ ├── offset-end.css
│ ├── offset-start.css
│ ├── opacity.css
│ ├── order.css
│ ├── orientation.css
│ ├── orphans.css
│ ├── outline-color.css
│ ├── outline-offset.css
│ ├── outline-style.css
│ ├── outline-width.css
│ ├── outline.css
│ ├── overflow-style.css
│ ├── overflow-wrap.css
│ ├── overflow-x.css
│ ├── overflow-y.css
│ ├── overflow.css
│ ├── padding-bottom.css
│ ├── padding-left.css
│ ├── padding-right.css
│ ├── padding-top.css
│ ├── padding.css
│ ├── page-break-after.css
│ ├── page-break-before.css
│ ├── page-break-inside.css
│ ├── pause-after.css
│ ├── pause-before.css
│ ├── pause.css
│ ├── perspective.css
│ ├── pointer-events.css
│ ├── position.css
│ ├── prefix.css
│ ├── quotes.css
│ ├── region-fragment.css
│ ├── resize.css
│ ├── rest-after.css
│ ├── rest-before.css
│ ├── rest.css
│ ├── right.css
│ ├── ruby-align.css
│ ├── ruby-merge.css
│ ├── ruby-position.css
│ ├── scroll-behavior.css
│ ├── scroll-chaining.css
│ ├── scroll-limit-x-max.css
│ ├── scroll-limit-x-min.css
│ ├── scroll-limit-y-max.css
│ ├── scroll-limit-y-min.css
│ ├── scroll-rails.css
│ ├── scroll-snap-points-x.css
│ ├── scroll-snap-points-y.css
│ ├── scroll-snap-type.css
│ ├── scroll-translation.css
│ ├── shape-image-threshold.css
│ ├── shape-margin.css
│ ├── shape-outside.css
│ ├── shape-rendering.css
│ ├── speak.css
│ ├── stop-color.css
│ ├── stop-opacity.css
│ ├── stroke-dashoffset.css
│ ├── stroke-linecap.css
│ ├── stroke-linejoin.css
│ ├── stroke-miterlimit.css
│ ├── stroke-opacity.css
│ ├── stroke-width.css
│ ├── suffix.css
│ ├── symbols.css
│ ├── tab-size.css
│ ├── table-layout.css
│ ├── tansition-timing-function.css
│ ├── text-align-all.css
│ ├── text-align-last.css
│ ├── text-align.css
│ ├── text-anchor.css
│ ├── text-combine-upright.css
│ ├── text-decoration-color.css
│ ├── text-decoration-line.css
│ ├── text-decoration-skip.css
│ ├── text-decoration-style.css
│ ├── text-decoration.css
│ ├── text-emphasis-color.css
│ ├── text-emphasis-position.css
│ ├── text-height.css
│ ├── text-indent.css
│ ├── text-justify.css
│ ├── text-orientation.css
│ ├── text-overflow.css
│ ├── text-rendering.css
│ ├── text-transform.css
│ ├── text-underline-position.css
│ ├── top.css
│ ├── touch-action.css
│ ├── transform-box.css
│ ├── transform-style.css
│ ├── transform.css
│ ├── transition-delay.css
│ ├── transition-duration.css
│ ├── unicode-bidi.css
│ ├── user-select.css
│ ├── user-zoom.css
│ ├── vertical-align.css
│ ├── visibility.css
│ ├── voice-duration.css
│ ├── voice-stress.css
│ ├── white-space.css
│ ├── widows.css
│ ├── width.css
│ ├── word-break.css
│ ├── word-spacing.css
│ ├── wrap-margin.css
│ ├── writing-mode.css
│ ├── z-index.css
│ └── zoom.css
│ ├── propertyRegularExpression.css
│ ├── regexlikeselectors.css
│ ├── regexlikeselectorsStartingWithBOM.css
│ ├── selectorNamingConvention.css
│ ├── selectorNamingConventionCustomFormat.css
│ ├── semicolonDeclaration.css
│ ├── shorthand.css
│ ├── starhack.css
│ ├── tabcharacter.css
│ ├── todoTagPresence.css
│ ├── toomanywebfonts.css
│ ├── trailingWhitespace.css
│ ├── underscorehack.css
│ ├── universalselector.css
│ ├── unknownAtRules.css
│ ├── unknownFunctions.css
│ ├── unknownPseudos.css
│ ├── utf16BE.css
│ ├── utf16LE.css
│ ├── utf8WithBom.css
│ ├── utf8WithoutBom.css
│ ├── vendorprefixes.css
│ ├── vendorprefixwithstandard.css
│ └── zerounits.css
├── css-frontend
├── pom.xml
└── src
│ ├── main
│ └── java
│ │ └── org
│ │ └── sonar
│ │ ├── css
│ │ ├── FileUtils.java
│ │ ├── model
│ │ │ ├── Color.java
│ │ │ ├── StandardCssObject.java
│ │ │ ├── StandardCssObjectFactory.java
│ │ │ ├── Unit.java
│ │ │ ├── Vendor.java
│ │ │ ├── atrule
│ │ │ │ ├── StandardAtRule.java
│ │ │ │ ├── StandardAtRuleFactory.java
│ │ │ │ ├── UnknownAtRule.java
│ │ │ │ ├── package-info.java
│ │ │ │ └── standard
│ │ │ │ │ ├── Annotation.java
│ │ │ │ │ ├── BottomCenter.java
│ │ │ │ │ ├── BottomLeft.java
│ │ │ │ │ ├── BottomLeftCorner.java
│ │ │ │ │ ├── BottomRight.java
│ │ │ │ │ ├── BottomRightCorner.java
│ │ │ │ │ ├── CharacterVariant.java
│ │ │ │ │ ├── Charset.java
│ │ │ │ │ ├── CounterStyle.java
│ │ │ │ │ ├── CustomMedia.java
│ │ │ │ │ ├── Document.java
│ │ │ │ │ ├── FontFace.java
│ │ │ │ │ ├── FontFeatureValues.java
│ │ │ │ │ ├── Import.java
│ │ │ │ │ ├── Keyframes.java
│ │ │ │ │ ├── LeftBottom.java
│ │ │ │ │ ├── LeftMiddle.java
│ │ │ │ │ ├── LeftTop.java
│ │ │ │ │ ├── Media.java
│ │ │ │ │ ├── Namespace.java
│ │ │ │ │ ├── Ornaments.java
│ │ │ │ │ ├── Page.java
│ │ │ │ │ ├── RightBottom.java
│ │ │ │ │ ├── RightMiddle.java
│ │ │ │ │ ├── RightTop.java
│ │ │ │ │ ├── Styleset.java
│ │ │ │ │ ├── Stylistic.java
│ │ │ │ │ ├── Supports.java
│ │ │ │ │ ├── Swash.java
│ │ │ │ │ ├── TopCenter.java
│ │ │ │ │ ├── TopLeft.java
│ │ │ │ │ ├── TopLeftCorner.java
│ │ │ │ │ ├── TopRight.java
│ │ │ │ │ ├── TopRightCorner.java
│ │ │ │ │ ├── Viewport.java
│ │ │ │ │ └── package-info.java
│ │ │ ├── function
│ │ │ │ ├── StandardFunction.java
│ │ │ │ ├── StandardFunctionFactory.java
│ │ │ │ ├── UnknownFunction.java
│ │ │ │ ├── package-info.java
│ │ │ │ └── standard
│ │ │ │ │ ├── Alpha.java
│ │ │ │ │ ├── Annotation.java
│ │ │ │ │ ├── Attr.java
│ │ │ │ │ ├── Basicimage.java
│ │ │ │ │ ├── Blendtrans.java
│ │ │ │ │ ├── Blur.java
│ │ │ │ │ ├── Brightness.java
│ │ │ │ │ ├── Calc.java
│ │ │ │ │ ├── CharacterVariant.java
│ │ │ │ │ ├── Chroma.java
│ │ │ │ │ ├── Circle.java
│ │ │ │ │ ├── ColorStop.java
│ │ │ │ │ ├── Compositor.java
│ │ │ │ │ ├── ConicGradient.java
│ │ │ │ │ ├── Contrast.java
│ │ │ │ │ ├── Counter.java
│ │ │ │ │ ├── Counters.java
│ │ │ │ │ ├── CrossFade.java
│ │ │ │ │ ├── CubicBezier.java
│ │ │ │ │ ├── Domain.java
│ │ │ │ │ ├── DropShadow.java
│ │ │ │ │ ├── Ease.java
│ │ │ │ │ ├── EaseIn.java
│ │ │ │ │ ├── EaseInOut.java
│ │ │ │ │ ├── EaseOut.java
│ │ │ │ │ ├── Element.java
│ │ │ │ │ ├── Ellipse.java
│ │ │ │ │ ├── Emboss.java
│ │ │ │ │ ├── Engrave.java
│ │ │ │ │ ├── Expression.java
│ │ │ │ │ ├── FitContent.java
│ │ │ │ │ ├── Fliph.java
│ │ │ │ │ ├── Flipv.java
│ │ │ │ │ ├── Format.java
│ │ │ │ │ ├── From.java
│ │ │ │ │ ├── Glow.java
│ │ │ │ │ ├── Gray.java
│ │ │ │ │ ├── Grayscale.java
│ │ │ │ │ ├── Hsl.java
│ │ │ │ │ ├── Hsla.java
│ │ │ │ │ ├── HueRotate.java
│ │ │ │ │ ├── Icmfilter.java
│ │ │ │ │ ├── Image.java
│ │ │ │ │ ├── ImageSet.java
│ │ │ │ │ ├── Inset.java
│ │ │ │ │ ├── Invert.java
│ │ │ │ │ ├── Light.java
│ │ │ │ │ ├── Linear.java
│ │ │ │ │ ├── LinearGradient.java
│ │ │ │ │ ├── Local.java
│ │ │ │ │ ├── MaskFilter.java
│ │ │ │ │ ├── Matrix.java
│ │ │ │ │ ├── Matrix3d.java
│ │ │ │ │ ├── Max.java
│ │ │ │ │ ├── Min.java
│ │ │ │ │ ├── Minmax.java
│ │ │ │ │ ├── Motionblur.java
│ │ │ │ │ ├── Opacity.java
│ │ │ │ │ ├── Ornaments.java
│ │ │ │ │ ├── Perspective.java
│ │ │ │ │ ├── Polygon.java
│ │ │ │ │ ├── RadialGradient.java
│ │ │ │ │ ├── Rect.java
│ │ │ │ │ ├── Redirect.java
│ │ │ │ │ ├── Regexp.java
│ │ │ │ │ ├── RepeatingConicGradient.java
│ │ │ │ │ ├── RepeatingLinearGradient.java
│ │ │ │ │ ├── RepeatingRadialGradient.java
│ │ │ │ │ ├── Revealtrans.java
│ │ │ │ │ ├── Rgb.java
│ │ │ │ │ ├── Rgba.java
│ │ │ │ │ ├── Rotate.java
│ │ │ │ │ ├── Rotate3d.java
│ │ │ │ │ ├── Rotatex.java
│ │ │ │ │ ├── Rotatey.java
│ │ │ │ │ ├── Rotatez.java
│ │ │ │ │ ├── Running.java
│ │ │ │ │ ├── Saturate.java
│ │ │ │ │ ├── Scale.java
│ │ │ │ │ ├── Scale3d.java
│ │ │ │ │ ├── Scalex.java
│ │ │ │ │ ├── Scaley.java
│ │ │ │ │ ├── Scalez.java
│ │ │ │ │ ├── Sepia.java
│ │ │ │ │ ├── Shadow.java
│ │ │ │ │ ├── Skew.java
│ │ │ │ │ ├── Skewx.java
│ │ │ │ │ ├── Skewy.java
│ │ │ │ │ ├── Snapinterval.java
│ │ │ │ │ ├── Snaplist.java
│ │ │ │ │ ├── StepEnd.java
│ │ │ │ │ ├── StepStart.java
│ │ │ │ │ ├── Steps.java
│ │ │ │ │ ├── Styleset.java
│ │ │ │ │ ├── Stylistic.java
│ │ │ │ │ ├── Supports.java
│ │ │ │ │ ├── Swash.java
│ │ │ │ │ ├── Symbols.java
│ │ │ │ │ ├── To.java
│ │ │ │ │ ├── Toggle.java
│ │ │ │ │ ├── Translate.java
│ │ │ │ │ ├── Translate3d.java
│ │ │ │ │ ├── Translatex.java
│ │ │ │ │ ├── Translatey.java
│ │ │ │ │ ├── Translatez.java
│ │ │ │ │ ├── Url.java
│ │ │ │ │ ├── UrlPrefix.java
│ │ │ │ │ ├── Var.java
│ │ │ │ │ ├── Wave.java
│ │ │ │ │ ├── Xray.java
│ │ │ │ │ └── package-info.java
│ │ │ ├── package-info.java
│ │ │ ├── property
│ │ │ │ ├── StandardProperty.java
│ │ │ │ ├── StandardPropertyFactory.java
│ │ │ │ ├── UnknownProperty.java
│ │ │ │ ├── package-info.java
│ │ │ │ ├── standard
│ │ │ │ │ ├── Accelerator.java
│ │ │ │ │ ├── AdditiveSymbols.java
│ │ │ │ │ ├── AlignContent.java
│ │ │ │ │ ├── AlignItems.java
│ │ │ │ │ ├── AlignSelf.java
│ │ │ │ │ ├── AlignmentAdjust.java
│ │ │ │ │ ├── AlignmentBaseline.java
│ │ │ │ │ ├── All.java
│ │ │ │ │ ├── Animation.java
│ │ │ │ │ ├── AnimationDelay.java
│ │ │ │ │ ├── AnimationDirection.java
│ │ │ │ │ ├── AnimationDuration.java
│ │ │ │ │ ├── AnimationFillMode.java
│ │ │ │ │ ├── AnimationIterationCount.java
│ │ │ │ │ ├── AnimationName.java
│ │ │ │ │ ├── AnimationPlayState.java
│ │ │ │ │ ├── AnimationTimingFunction.java
│ │ │ │ │ ├── AnyHover.java
│ │ │ │ │ ├── AnyPointer.java
│ │ │ │ │ ├── Appearance.java
│ │ │ │ │ ├── AspectRatio.java
│ │ │ │ │ ├── Azimuth.java
│ │ │ │ │ ├── BackfaceVisibility.java
│ │ │ │ │ ├── Background.java
│ │ │ │ │ ├── BackgroundAttachment.java
│ │ │ │ │ ├── BackgroundBlendMode.java
│ │ │ │ │ ├── BackgroundClip.java
│ │ │ │ │ ├── BackgroundColor.java
│ │ │ │ │ ├── BackgroundImage.java
│ │ │ │ │ ├── BackgroundImageTransform.java
│ │ │ │ │ ├── BackgroundOrigin.java
│ │ │ │ │ ├── BackgroundPosition.java
│ │ │ │ │ ├── BackgroundPositionX.java
│ │ │ │ │ ├── BackgroundPositionY.java
│ │ │ │ │ ├── BackgroundRepeat.java
│ │ │ │ │ ├── BackgroundSize.java
│ │ │ │ │ ├── BaselineShift.java
│ │ │ │ │ ├── Behavior.java
│ │ │ │ │ ├── Binding.java
│ │ │ │ │ ├── Bleed.java
│ │ │ │ │ ├── BlockProgression.java
│ │ │ │ │ ├── BlockSize.java
│ │ │ │ │ ├── BookmarkLabel.java
│ │ │ │ │ ├── BookmarkLevel.java
│ │ │ │ │ ├── BookmarkState.java
│ │ │ │ │ ├── Border.java
│ │ │ │ │ ├── BorderBlockEnd.java
│ │ │ │ │ ├── BorderBlockEndColor.java
│ │ │ │ │ ├── BorderBlockEndStyle.java
│ │ │ │ │ ├── BorderBlockEndWidth.java
│ │ │ │ │ ├── BorderBlockStart.java
│ │ │ │ │ ├── BorderBlockStartColor.java
│ │ │ │ │ ├── BorderBlockStartStyle.java
│ │ │ │ │ ├── BorderBlockStartWidth.java
│ │ │ │ │ ├── BorderBottom.java
│ │ │ │ │ ├── BorderBottomColor.java
│ │ │ │ │ ├── BorderBottomLeftRadius.java
│ │ │ │ │ ├── BorderBottomRightRadius.java
│ │ │ │ │ ├── BorderBottomStyle.java
│ │ │ │ │ ├── BorderBottomWidth.java
│ │ │ │ │ ├── BorderBoundary.java
│ │ │ │ │ ├── BorderCollapse.java
│ │ │ │ │ ├── BorderColor.java
│ │ │ │ │ ├── BorderEnd.java
│ │ │ │ │ ├── BorderEndColor.java
│ │ │ │ │ ├── BorderEndStyle.java
│ │ │ │ │ ├── BorderEndWidth.java
│ │ │ │ │ ├── BorderImage.java
│ │ │ │ │ ├── BorderImageOutset.java
│ │ │ │ │ ├── BorderImageRepeat.java
│ │ │ │ │ ├── BorderImageSlice.java
│ │ │ │ │ ├── BorderImageSource.java
│ │ │ │ │ ├── BorderImageWidth.java
│ │ │ │ │ ├── BorderInlineEnd.java
│ │ │ │ │ ├── BorderInlineEndColor.java
│ │ │ │ │ ├── BorderInlineEndStyle.java
│ │ │ │ │ ├── BorderInlineEndWidth.java
│ │ │ │ │ ├── BorderInlineStart.java
│ │ │ │ │ ├── BorderInlineStartColor.java
│ │ │ │ │ ├── BorderInlineStartStyle.java
│ │ │ │ │ ├── BorderInlineStartWidth.java
│ │ │ │ │ ├── BorderLeft.java
│ │ │ │ │ ├── BorderLeftColor.java
│ │ │ │ │ ├── BorderLeftStyle.java
│ │ │ │ │ ├── BorderLeftWidth.java
│ │ │ │ │ ├── BorderRadius.java
│ │ │ │ │ ├── BorderRight.java
│ │ │ │ │ ├── BorderRightColor.java
│ │ │ │ │ ├── BorderRightStyle.java
│ │ │ │ │ ├── BorderRightWidth.java
│ │ │ │ │ ├── BorderSpacing.java
│ │ │ │ │ ├── BorderStart.java
│ │ │ │ │ ├── BorderStartColor.java
│ │ │ │ │ ├── BorderStartStyle.java
│ │ │ │ │ ├── BorderStartWidth.java
│ │ │ │ │ ├── BorderStyle.java
│ │ │ │ │ ├── BorderTop.java
│ │ │ │ │ ├── BorderTopColor.java
│ │ │ │ │ ├── BorderTopLeftRadius.java
│ │ │ │ │ ├── BorderTopRightRadius.java
│ │ │ │ │ ├── BorderTopStyle.java
│ │ │ │ │ ├── BorderTopWidth.java
│ │ │ │ │ ├── BorderWidth.java
│ │ │ │ │ ├── Bottom.java
│ │ │ │ │ ├── BoxAlign.java
│ │ │ │ │ ├── BoxDecorationBreak.java
│ │ │ │ │ ├── BoxDirection.java
│ │ │ │ │ ├── BoxFlex.java
│ │ │ │ │ ├── BoxFlexGroup.java
│ │ │ │ │ ├── BoxLines.java
│ │ │ │ │ ├── BoxOrdinalGroup.java
│ │ │ │ │ ├── BoxOrient.java
│ │ │ │ │ ├── BoxPack.java
│ │ │ │ │ ├── BoxShadow.java
│ │ │ │ │ ├── BoxSizing.java
│ │ │ │ │ ├── BoxSnap.java
│ │ │ │ │ ├── BoxSuppress.java
│ │ │ │ │ ├── BreakAfter.java
│ │ │ │ │ ├── BreakBefore.java
│ │ │ │ │ ├── BreakInside.java
│ │ │ │ │ ├── CaptionSide.java
│ │ │ │ │ ├── Caret.java
│ │ │ │ │ ├── CaretColor.java
│ │ │ │ │ ├── CaretShape.java
│ │ │ │ │ ├── Clear.java
│ │ │ │ │ ├── Clip.java
│ │ │ │ │ ├── ClipPath.java
│ │ │ │ │ ├── ClipRule.java
│ │ │ │ │ ├── Color.java
│ │ │ │ │ ├── ColorGamut.java
│ │ │ │ │ ├── ColorIndex.java
│ │ │ │ │ ├── ColorInterpolation.java
│ │ │ │ │ ├── ColorInterpolationFilters.java
│ │ │ │ │ ├── ColorRendering.java
│ │ │ │ │ ├── ColumnCount.java
│ │ │ │ │ ├── ColumnFill.java
│ │ │ │ │ ├── ColumnGap.java
│ │ │ │ │ ├── ColumnRule.java
│ │ │ │ │ ├── ColumnRuleColor.java
│ │ │ │ │ ├── ColumnRuleStyle.java
│ │ │ │ │ ├── ColumnRuleWidth.java
│ │ │ │ │ ├── ColumnSpan.java
│ │ │ │ │ ├── ColumnWidth.java
│ │ │ │ │ ├── Columns.java
│ │ │ │ │ ├── Content.java
│ │ │ │ │ ├── ContentZoomChaining.java
│ │ │ │ │ ├── ContentZoomLimit.java
│ │ │ │ │ ├── ContentZoomLimitMax.java
│ │ │ │ │ ├── ContentZoomLimitMin.java
│ │ │ │ │ ├── ContentZoomSnap.java
│ │ │ │ │ ├── ContentZoomSnapPoints.java
│ │ │ │ │ ├── ContentZoomSnapType.java
│ │ │ │ │ ├── ContentZooming.java
│ │ │ │ │ ├── CounterIncrement.java
│ │ │ │ │ ├── CounterReset.java
│ │ │ │ │ ├── CounterSet.java
│ │ │ │ │ ├── Cue.java
│ │ │ │ │ ├── CueAfter.java
│ │ │ │ │ ├── CueBefore.java
│ │ │ │ │ ├── Cursor.java
│ │ │ │ │ ├── DeviceAspectRatio.java
│ │ │ │ │ ├── DeviceHeight.java
│ │ │ │ │ ├── DevicePixelRatio.java
│ │ │ │ │ ├── DeviceWidth.java
│ │ │ │ │ ├── Direction.java
│ │ │ │ │ ├── Display.java
│ │ │ │ │ ├── DominantBaseline.java
│ │ │ │ │ ├── DropInitialAfterAdjust.java
│ │ │ │ │ ├── DropInitialAfterAlign.java
│ │ │ │ │ ├── DropInitialBeforeAdjust.java
│ │ │ │ │ ├── DropInitialBeforeAlign.java
│ │ │ │ │ ├── DropInitialSize.java
│ │ │ │ │ ├── DropInitialValue.java
│ │ │ │ │ ├── Elevation.java
│ │ │ │ │ ├── EmptyCells.java
│ │ │ │ │ ├── EnableBackground.java
│ │ │ │ │ ├── Fallback.java
│ │ │ │ │ ├── Fill.java
│ │ │ │ │ ├── FillOpacity.java
│ │ │ │ │ ├── FillRule.java
│ │ │ │ │ ├── Filter.java
│ │ │ │ │ ├── Fit.java
│ │ │ │ │ ├── FitPosition.java
│ │ │ │ │ ├── Flex.java
│ │ │ │ │ ├── FlexBasis.java
│ │ │ │ │ ├── FlexDirection.java
│ │ │ │ │ ├── FlexFlow.java
│ │ │ │ │ ├── FlexGrow.java
│ │ │ │ │ ├── FlexShrink.java
│ │ │ │ │ ├── FlexWrap.java
│ │ │ │ │ ├── Float.java
│ │ │ │ │ ├── FloatDefer.java
│ │ │ │ │ ├── FloatOffset.java
│ │ │ │ │ ├── FloatReference.java
│ │ │ │ │ ├── FloodColor.java
│ │ │ │ │ ├── FloodOpacity.java
│ │ │ │ │ ├── FlowFrom.java
│ │ │ │ │ ├── FlowInto.java
│ │ │ │ │ ├── Font.java
│ │ │ │ │ ├── FontFamily.java
│ │ │ │ │ ├── FontFeatureSettings.java
│ │ │ │ │ ├── FontKerning.java
│ │ │ │ │ ├── FontLanguageOverride.java
│ │ │ │ │ ├── FontSize.java
│ │ │ │ │ ├── FontSizeAdjust.java
│ │ │ │ │ ├── FontStretch.java
│ │ │ │ │ ├── FontStyle.java
│ │ │ │ │ ├── FontSynthesis.java
│ │ │ │ │ ├── FontVariant.java
│ │ │ │ │ ├── FontVariantAlternates.java
│ │ │ │ │ ├── FontVariantCaps.java
│ │ │ │ │ ├── FontVariantEastAsian.java
│ │ │ │ │ ├── FontVariantLigatures.java
│ │ │ │ │ ├── FontVariantNumeric.java
│ │ │ │ │ ├── FontVariantPosition.java
│ │ │ │ │ ├── FontWeight.java
│ │ │ │ │ ├── FootnoteDisplay.java
│ │ │ │ │ ├── FootnotePolicy.java
│ │ │ │ │ ├── GlyphOrientationHorizontal.java
│ │ │ │ │ ├── GlyphOrientationVertical.java
│ │ │ │ │ ├── Grid.java
│ │ │ │ │ ├── GridArea.java
│ │ │ │ │ ├── GridAutoColumns.java
│ │ │ │ │ ├── GridAutoFlow.java
│ │ │ │ │ ├── GridAutoRows.java
│ │ │ │ │ ├── GridCellStacking.java
│ │ │ │ │ ├── GridColumn.java
│ │ │ │ │ ├── GridColumnAlign.java
│ │ │ │ │ ├── GridColumnEnd.java
│ │ │ │ │ ├── GridColumnGap.java
│ │ │ │ │ ├── GridColumnSizing.java
│ │ │ │ │ ├── GridColumnSpan.java
│ │ │ │ │ ├── GridColumnStart.java
│ │ │ │ │ ├── GridColumns.java
│ │ │ │ │ ├── GridFlow.java
│ │ │ │ │ ├── GridGap.java
│ │ │ │ │ ├── GridLayer.java
│ │ │ │ │ ├── GridRow.java
│ │ │ │ │ ├── GridRowAlign.java
│ │ │ │ │ ├── GridRowEnd.java
│ │ │ │ │ ├── GridRowGap.java
│ │ │ │ │ ├── GridRowSizing.java
│ │ │ │ │ ├── GridRowSpan.java
│ │ │ │ │ ├── GridRowStart.java
│ │ │ │ │ ├── GridRows.java
│ │ │ │ │ ├── GridTemplate.java
│ │ │ │ │ ├── GridTemplateAreas.java
│ │ │ │ │ ├── GridTemplateColumns.java
│ │ │ │ │ ├── GridTemplateRows.java
│ │ │ │ │ ├── HangingPunctuation.java
│ │ │ │ │ ├── Height.java
│ │ │ │ │ ├── HighContrast.java
│ │ │ │ │ ├── HighContrastAdjust.java
│ │ │ │ │ ├── Hover.java
│ │ │ │ │ ├── HyphenateAfter.java
│ │ │ │ │ ├── HyphenateBefore.java
│ │ │ │ │ ├── HyphenateCharacter.java
│ │ │ │ │ ├── HyphenateLimitChars.java
│ │ │ │ │ ├── HyphenateLimitLast.java
│ │ │ │ │ ├── HyphenateLimitLines.java
│ │ │ │ │ ├── HyphenateLimitZone.java
│ │ │ │ │ ├── HyphenateLines.java
│ │ │ │ │ ├── HyphenateResource.java
│ │ │ │ │ ├── Hyphens.java
│ │ │ │ │ ├── ImageOrientation.java
│ │ │ │ │ ├── ImageRendering.java
│ │ │ │ │ ├── ImageResolution.java
│ │ │ │ │ ├── ImeMode.java
│ │ │ │ │ ├── InitialLetter.java
│ │ │ │ │ ├── InitialLetterAlign.java
│ │ │ │ │ ├── InitialLetterWrap.java
│ │ │ │ │ ├── InlineBoxAlign.java
│ │ │ │ │ ├── InlineSize.java
│ │ │ │ │ ├── Isolation.java
│ │ │ │ │ ├── JustifyContent.java
│ │ │ │ │ ├── JustifyItems.java
│ │ │ │ │ ├── JustifySelf.java
│ │ │ │ │ ├── Kerning.java
│ │ │ │ │ ├── LayoutFlow.java
│ │ │ │ │ ├── LayoutGrid.java
│ │ │ │ │ ├── LayoutGridChar.java
│ │ │ │ │ ├── LayoutGridLine.java
│ │ │ │ │ ├── LayoutGridMode.java
│ │ │ │ │ ├── LayoutGridType.java
│ │ │ │ │ ├── Left.java
│ │ │ │ │ ├── LetterSpacing.java
│ │ │ │ │ ├── LightingColor.java
│ │ │ │ │ ├── LineBreak.java
│ │ │ │ │ ├── LineGrid.java
│ │ │ │ │ ├── LineHeight.java
│ │ │ │ │ ├── LineSnap.java
│ │ │ │ │ ├── LineStacking.java
│ │ │ │ │ ├── LineStackingRuby.java
│ │ │ │ │ ├── LineStackingShift.java
│ │ │ │ │ ├── LineStackingStrategy.java
│ │ │ │ │ ├── ListStyle.java
│ │ │ │ │ ├── ListStyleImage.java
│ │ │ │ │ ├── ListStylePosition.java
│ │ │ │ │ ├── ListStyleType.java
│ │ │ │ │ ├── Margin.java
│ │ │ │ │ ├── MarginBlockEnd.java
│ │ │ │ │ ├── MarginBlockStart.java
│ │ │ │ │ ├── MarginBottom.java
│ │ │ │ │ ├── MarginEnd.java
│ │ │ │ │ ├── MarginInlineEnd.java
│ │ │ │ │ ├── MarginInlineStart.java
│ │ │ │ │ ├── MarginLeft.java
│ │ │ │ │ ├── MarginRight.java
│ │ │ │ │ ├── MarginStart.java
│ │ │ │ │ ├── MarginTop.java
│ │ │ │ │ ├── Marker.java
│ │ │ │ │ ├── MarkerEnd.java
│ │ │ │ │ ├── MarkerMid.java
│ │ │ │ │ ├── MarkerSide.java
│ │ │ │ │ ├── MarkerStart.java
│ │ │ │ │ ├── Marks.java
│ │ │ │ │ ├── Marquee.java
│ │ │ │ │ ├── MarqueeDir.java
│ │ │ │ │ ├── MarqueeDirection.java
│ │ │ │ │ ├── MarqueeIncrement.java
│ │ │ │ │ ├── MarqueeLoop.java
│ │ │ │ │ ├── MarqueePlayCount.java
│ │ │ │ │ ├── MarqueeRepetition.java
│ │ │ │ │ ├── MarqueeSpeed.java
│ │ │ │ │ ├── MarqueeStyle.java
│ │ │ │ │ ├── Mask.java
│ │ │ │ │ ├── MaskBorder.java
│ │ │ │ │ ├── MaskBorderMode.java
│ │ │ │ │ ├── MaskBorderOutset.java
│ │ │ │ │ ├── MaskBorderRepeat.java
│ │ │ │ │ ├── MaskBorderSlice.java
│ │ │ │ │ ├── MaskBorderSource.java
│ │ │ │ │ ├── MaskBorderWidth.java
│ │ │ │ │ ├── MaskClip.java
│ │ │ │ │ ├── MaskComposite.java
│ │ │ │ │ ├── MaskImage.java
│ │ │ │ │ ├── MaskMode.java
│ │ │ │ │ ├── MaskOrigin.java
│ │ │ │ │ ├── MaskPosition.java
│ │ │ │ │ ├── MaskRepeat.java
│ │ │ │ │ ├── MaskSize.java
│ │ │ │ │ ├── MaskType.java
│ │ │ │ │ ├── MaxBlockSize.java
│ │ │ │ │ ├── MaxDevicePixelRatio.java
│ │ │ │ │ ├── MaxHeight.java
│ │ │ │ │ ├── MaxInlineSize.java
│ │ │ │ │ ├── MaxLines.java
│ │ │ │ │ ├── MaxWidth.java
│ │ │ │ │ ├── MaxZoom.java
│ │ │ │ │ ├── MinBlockSize.java
│ │ │ │ │ ├── MinDevicePixelRatio.java
│ │ │ │ │ ├── MinHeight.java
│ │ │ │ │ ├── MinInlineSize.java
│ │ │ │ │ ├── MinWidth.java
│ │ │ │ │ ├── MinZoom.java
│ │ │ │ │ ├── MixBlendMode.java
│ │ │ │ │ ├── Monochrome.java
│ │ │ │ │ ├── Motion.java
│ │ │ │ │ ├── MotionOffset.java
│ │ │ │ │ ├── MotionPath.java
│ │ │ │ │ ├── MotionRotation.java
│ │ │ │ │ ├── MoveTo.java
│ │ │ │ │ ├── NavDown.java
│ │ │ │ │ ├── NavIndex.java
│ │ │ │ │ ├── NavLeft.java
│ │ │ │ │ ├── NavRight.java
│ │ │ │ │ ├── NavUp.java
│ │ │ │ │ ├── Negative.java
│ │ │ │ │ ├── ObjectFit.java
│ │ │ │ │ ├── ObjectPosition.java
│ │ │ │ │ ├── OffsetAfter.java
│ │ │ │ │ ├── OffsetAnchor.java
│ │ │ │ │ ├── OffsetBefore.java
│ │ │ │ │ ├── OffsetBlockEnd.java
│ │ │ │ │ ├── OffsetBlockStart.java
│ │ │ │ │ ├── OffsetDistance.java
│ │ │ │ │ ├── OffsetEnd.java
│ │ │ │ │ ├── OffsetInlineEnd.java
│ │ │ │ │ ├── OffsetInlineStart.java
│ │ │ │ │ ├── OffsetOrigin.java
│ │ │ │ │ ├── OffsetPath.java
│ │ │ │ │ ├── OffsetRotation.java
│ │ │ │ │ ├── OffsetStart.java
│ │ │ │ │ ├── Opacity.java
│ │ │ │ │ ├── Order.java
│ │ │ │ │ ├── Orientation.java
│ │ │ │ │ ├── Orphans.java
│ │ │ │ │ ├── Outline.java
│ │ │ │ │ ├── OutlineColor.java
│ │ │ │ │ ├── OutlineOffset.java
│ │ │ │ │ ├── OutlineStyle.java
│ │ │ │ │ ├── OutlineWidth.java
│ │ │ │ │ ├── Overflow.java
│ │ │ │ │ ├── OverflowBlock.java
│ │ │ │ │ ├── OverflowInline.java
│ │ │ │ │ ├── OverflowStyle.java
│ │ │ │ │ ├── OverflowWrap.java
│ │ │ │ │ ├── OverflowX.java
│ │ │ │ │ ├── OverflowY.java
│ │ │ │ │ ├── Pad.java
│ │ │ │ │ ├── Padding.java
│ │ │ │ │ ├── PaddingBlockEnd.java
│ │ │ │ │ ├── PaddingBlockStart.java
│ │ │ │ │ ├── PaddingBottom.java
│ │ │ │ │ ├── PaddingEnd.java
│ │ │ │ │ ├── PaddingInlineEnd.java
│ │ │ │ │ ├── PaddingInlineStart.java
│ │ │ │ │ ├── PaddingLeft.java
│ │ │ │ │ ├── PaddingRight.java
│ │ │ │ │ ├── PaddingStart.java
│ │ │ │ │ ├── PaddingTop.java
│ │ │ │ │ ├── Page.java
│ │ │ │ │ ├── PageBreakAfter.java
│ │ │ │ │ ├── PageBreakBefore.java
│ │ │ │ │ ├── PageBreakInside.java
│ │ │ │ │ ├── PagePolicy.java
│ │ │ │ │ ├── Pause.java
│ │ │ │ │ ├── PauseAfter.java
│ │ │ │ │ ├── PauseBefore.java
│ │ │ │ │ ├── Perspective.java
│ │ │ │ │ ├── PerspectiveOrigin.java
│ │ │ │ │ ├── Phonemes.java
│ │ │ │ │ ├── Pitch.java
│ │ │ │ │ ├── PitchRange.java
│ │ │ │ │ ├── PlayDuring.java
│ │ │ │ │ ├── Pointer.java
│ │ │ │ │ ├── PointerEvents.java
│ │ │ │ │ ├── Position.java
│ │ │ │ │ ├── Prefix.java
│ │ │ │ │ ├── PresentationLevel.java
│ │ │ │ │ ├── ProgressAppearance.java
│ │ │ │ │ ├── PunctuationTrim.java
│ │ │ │ │ ├── Quotes.java
│ │ │ │ │ ├── Range.java
│ │ │ │ │ ├── RegionFragment.java
│ │ │ │ │ ├── Resize.java
│ │ │ │ │ ├── Resolution.java
│ │ │ │ │ ├── Rest.java
│ │ │ │ │ ├── RestAfter.java
│ │ │ │ │ ├── RestBefore.java
│ │ │ │ │ ├── Richness.java
│ │ │ │ │ ├── Right.java
│ │ │ │ │ ├── Rotation.java
│ │ │ │ │ ├── RotationPoint.java
│ │ │ │ │ ├── RubyAlign.java
│ │ │ │ │ ├── RubyMerge.java
│ │ │ │ │ ├── RubyOverhang.java
│ │ │ │ │ ├── RubyPosition.java
│ │ │ │ │ ├── RubySpan.java
│ │ │ │ │ ├── Scan.java
│ │ │ │ │ ├── Scollbar3dlightColor.java
│ │ │ │ │ ├── ScollbarArrowColor.java
│ │ │ │ │ ├── ScollbarBaseColor.java
│ │ │ │ │ ├── ScollbarDarkShadowColor.java
│ │ │ │ │ ├── Scripting.java
│ │ │ │ │ ├── ScrollBehavior.java
│ │ │ │ │ ├── ScrollChaining.java
│ │ │ │ │ ├── ScrollLimit.java
│ │ │ │ │ ├── ScrollLimitXMax.java
│ │ │ │ │ ├── ScrollLimitXMin.java
│ │ │ │ │ ├── ScrollLimitYMax.java
│ │ │ │ │ ├── ScrollLimitYMin.java
│ │ │ │ │ ├── ScrollRails.java
│ │ │ │ │ ├── ScrollSnapAlign.java
│ │ │ │ │ ├── ScrollSnapMargin.java
│ │ │ │ │ ├── ScrollSnapMarginBlock.java
│ │ │ │ │ ├── ScrollSnapMarginBlockEnd.java
│ │ │ │ │ ├── ScrollSnapMarginBlockStart.java
│ │ │ │ │ ├── ScrollSnapMarginBottom.java
│ │ │ │ │ ├── ScrollSnapMarginInline.java
│ │ │ │ │ ├── ScrollSnapMarginInlineEnd.java
│ │ │ │ │ ├── ScrollSnapMarginInlineStart.java
│ │ │ │ │ ├── ScrollSnapMarginLeft.java
│ │ │ │ │ ├── ScrollSnapMarginRight.java
│ │ │ │ │ ├── ScrollSnapMarginTop.java
│ │ │ │ │ ├── ScrollSnapPadding.java
│ │ │ │ │ ├── ScrollSnapPaddingBlock.java
│ │ │ │ │ ├── ScrollSnapPaddingBlockEnd.java
│ │ │ │ │ ├── ScrollSnapPaddingBlockStart.java
│ │ │ │ │ ├── ScrollSnapPaddingBottom.java
│ │ │ │ │ ├── ScrollSnapPaddingInline.java
│ │ │ │ │ ├── ScrollSnapPaddingInlineEnd.java
│ │ │ │ │ ├── ScrollSnapPaddingInlineStart.java
│ │ │ │ │ ├── ScrollSnapPaddingLeft.java
│ │ │ │ │ ├── ScrollSnapPaddingRight.java
│ │ │ │ │ ├── ScrollSnapPaddingTop.java
│ │ │ │ │ ├── ScrollSnapPointsX.java
│ │ │ │ │ ├── ScrollSnapPointsY.java
│ │ │ │ │ ├── ScrollSnapStop.java
│ │ │ │ │ ├── ScrollSnapType.java
│ │ │ │ │ ├── ScrollSnapX.java
│ │ │ │ │ ├── ScrollSnapY.java
│ │ │ │ │ ├── ScrollTranslation.java
│ │ │ │ │ ├── Scrollbar3dlightColor.java
│ │ │ │ │ ├── ScrollbarDarkshadowColor.java
│ │ │ │ │ ├── ScrollbarFaceColor.java
│ │ │ │ │ ├── ScrollbarHighlightColor.java
│ │ │ │ │ ├── ScrollbarShadowColor.java
│ │ │ │ │ ├── ScrollbarTrackColor.java
│ │ │ │ │ ├── Shape.java
│ │ │ │ │ ├── ShapeImageThreshold.java
│ │ │ │ │ ├── ShapeInside.java
│ │ │ │ │ ├── ShapeMargin.java
│ │ │ │ │ ├── ShapeOutside.java
│ │ │ │ │ ├── ShapeRendering.java
│ │ │ │ │ ├── Size.java
│ │ │ │ │ ├── Speak.java
│ │ │ │ │ ├── SpeakAs.java
│ │ │ │ │ ├── SpeakHeader.java
│ │ │ │ │ ├── SpeakNumeral.java
│ │ │ │ │ ├── SpeakPunctuation.java
│ │ │ │ │ ├── SpeechRate.java
│ │ │ │ │ ├── Src.java
│ │ │ │ │ ├── StopColor.java
│ │ │ │ │ ├── StopOpacity.java
│ │ │ │ │ ├── Stress.java
│ │ │ │ │ ├── StringSet.java
│ │ │ │ │ ├── Stroke.java
│ │ │ │ │ ├── StrokeDasharray.java
│ │ │ │ │ ├── StrokeDashoffset.java
│ │ │ │ │ ├── StrokeLinecap.java
│ │ │ │ │ ├── StrokeLinejoin.java
│ │ │ │ │ ├── StrokeMiterlimit.java
│ │ │ │ │ ├── StrokeOpacity.java
│ │ │ │ │ ├── StrokeWidth.java
│ │ │ │ │ ├── Suffix.java
│ │ │ │ │ ├── Symbols.java
│ │ │ │ │ ├── System.java
│ │ │ │ │ ├── TabSize.java
│ │ │ │ │ ├── TableLayout.java
│ │ │ │ │ ├── Target.java
│ │ │ │ │ ├── TargetName.java
│ │ │ │ │ ├── TargetNew.java
│ │ │ │ │ ├── TargetPosition.java
│ │ │ │ │ ├── TextAlign.java
│ │ │ │ │ ├── TextAlignAll.java
│ │ │ │ │ ├── TextAlignLast.java
│ │ │ │ │ ├── TextAnchor.java
│ │ │ │ │ ├── TextAutoSpace.java
│ │ │ │ │ ├── TextCombineHorizontal.java
│ │ │ │ │ ├── TextCombineUpright.java
│ │ │ │ │ ├── TextDecoration.java
│ │ │ │ │ ├── TextDecorationColor.java
│ │ │ │ │ ├── TextDecorationLine.java
│ │ │ │ │ ├── TextDecorationSkip.java
│ │ │ │ │ ├── TextDecorationStyle.java
│ │ │ │ │ ├── TextEmphasis.java
│ │ │ │ │ ├── TextEmphasisColor.java
│ │ │ │ │ ├── TextEmphasisPosition.java
│ │ │ │ │ ├── TextEmphasisStyle.java
│ │ │ │ │ ├── TextHeight.java
│ │ │ │ │ ├── TextIndent.java
│ │ │ │ │ ├── TextJustify.java
│ │ │ │ │ ├── TextKashidaSpace.java
│ │ │ │ │ ├── TextOrientation.java
│ │ │ │ │ ├── TextOutline.java
│ │ │ │ │ ├── TextOverflow.java
│ │ │ │ │ ├── TextRendering.java
│ │ │ │ │ ├── TextShadow.java
│ │ │ │ │ ├── TextSizeAdjust.java
│ │ │ │ │ ├── TextSpaceCollapse.java
│ │ │ │ │ ├── TextSpaceTrim.java
│ │ │ │ │ ├── TextSpacing.java
│ │ │ │ │ ├── TextStroke.java
│ │ │ │ │ ├── TextTransform.java
│ │ │ │ │ ├── TextUnderlinePosition.java
│ │ │ │ │ ├── TextWrap.java
│ │ │ │ │ ├── Top.java
│ │ │ │ │ ├── TouchAction.java
│ │ │ │ │ ├── Transform.java
│ │ │ │ │ ├── TransformBox.java
│ │ │ │ │ ├── TransformOrigin.java
│ │ │ │ │ ├── TransformStyle.java
│ │ │ │ │ ├── Transition.java
│ │ │ │ │ ├── TransitionDelay.java
│ │ │ │ │ ├── TransitionDuration.java
│ │ │ │ │ ├── TransitionProperty.java
│ │ │ │ │ ├── TransitionTimingFunction.java
│ │ │ │ │ ├── UnicodeBidi.java
│ │ │ │ │ ├── UnicodeRange.java
│ │ │ │ │ ├── Update.java
│ │ │ │ │ ├── UserModify.java
│ │ │ │ │ ├── UserSelect.java
│ │ │ │ │ ├── UserZoom.java
│ │ │ │ │ ├── VerticalAlign.java
│ │ │ │ │ ├── ViewState.java
│ │ │ │ │ ├── ViewportFit.java
│ │ │ │ │ ├── Visibility.java
│ │ │ │ │ ├── VoiceBalance.java
│ │ │ │ │ ├── VoiceDuration.java
│ │ │ │ │ ├── VoiceFamily.java
│ │ │ │ │ ├── VoicePitch.java
│ │ │ │ │ ├── VoiceRange.java
│ │ │ │ │ ├── VoiceRate.java
│ │ │ │ │ ├── VoiceStress.java
│ │ │ │ │ ├── VoiceVolume.java
│ │ │ │ │ ├── Volume.java
│ │ │ │ │ ├── WhiteSpace.java
│ │ │ │ │ ├── WhiteSpaceCollapse.java
│ │ │ │ │ ├── Widows.java
│ │ │ │ │ ├── Width.java
│ │ │ │ │ ├── WillChange.java
│ │ │ │ │ ├── WordBreak.java
│ │ │ │ │ ├── WordSpacing.java
│ │ │ │ │ ├── WordWrap.java
│ │ │ │ │ ├── WrapAfter.java
│ │ │ │ │ ├── WrapBefore.java
│ │ │ │ │ ├── WrapFlow.java
│ │ │ │ │ ├── WrapInside.java
│ │ │ │ │ ├── WrapMargin.java
│ │ │ │ │ ├── WrapThrough.java
│ │ │ │ │ ├── WritingMode.java
│ │ │ │ │ ├── ZIndex.java
│ │ │ │ │ ├── Zoom.java
│ │ │ │ │ └── package-info.java
│ │ │ │ └── validator
│ │ │ │ │ ├── HashMultiplierValidator.java
│ │ │ │ │ ├── MultiplierValidator.java
│ │ │ │ │ ├── PlusMultiplierValidator.java
│ │ │ │ │ ├── Validator.java
│ │ │ │ │ ├── ValidatorFactory.java
│ │ │ │ │ ├── ValueElementListValidator.java
│ │ │ │ │ ├── ValueElementMultiValidator.java
│ │ │ │ │ ├── ValueElementValidator.java
│ │ │ │ │ ├── ValueValidator.java
│ │ │ │ │ ├── package-info.java
│ │ │ │ │ ├── property
│ │ │ │ │ ├── CounterValidator.java
│ │ │ │ │ ├── CuePropertyValidator.java
│ │ │ │ │ ├── CursorValidator.java
│ │ │ │ │ ├── FilterValidator.java
│ │ │ │ │ ├── FlexFlowValidator.java
│ │ │ │ │ ├── FontFamilyValidator.java
│ │ │ │ │ ├── FontSynthesisValidator.java
│ │ │ │ │ ├── HangingPunctuationValidator.java
│ │ │ │ │ ├── NavValidator.java
│ │ │ │ │ ├── OutlineValidator.java
│ │ │ │ │ ├── PausePropertyValidator.java
│ │ │ │ │ ├── QuotesValidator.java
│ │ │ │ │ ├── ShapeOutsideValidator.java
│ │ │ │ │ ├── TextCombineUprightValidator.java
│ │ │ │ │ ├── TextDecorationLineValidator.java
│ │ │ │ │ ├── TextDecorationSkipValidator.java
│ │ │ │ │ ├── TextEmphasisPositionValidator.java
│ │ │ │ │ ├── TextIndentValidator.java
│ │ │ │ │ ├── TextUnderlinePositionValidator.java
│ │ │ │ │ ├── TouchActionValidator.java
│ │ │ │ │ ├── TransformValidator.java
│ │ │ │ │ ├── animation
│ │ │ │ │ │ ├── AnimationDelayValidator.java
│ │ │ │ │ │ ├── AnimationDirectionValidator.java
│ │ │ │ │ │ ├── AnimationDurationValidator.java
│ │ │ │ │ │ ├── AnimationFillModeValidator.java
│ │ │ │ │ │ ├── AnimationIterationCountValidator.java
│ │ │ │ │ │ ├── AnimationNameValidator.java
│ │ │ │ │ │ ├── AnimationPlayStateValidator.java
│ │ │ │ │ │ ├── AnimationTimingFunctionValidator.java
│ │ │ │ │ │ ├── AnimationValidator.java
│ │ │ │ │ │ └── package-info.java
│ │ │ │ │ ├── background
│ │ │ │ │ │ ├── BackgroundAttachmentValidator.java
│ │ │ │ │ │ ├── BackgroundClipValidator.java
│ │ │ │ │ │ ├── BackgroundImageValidator.java
│ │ │ │ │ │ ├── BackgroundOriginValidator.java
│ │ │ │ │ │ ├── BackgroundPositionValidator.java
│ │ │ │ │ │ ├── BackgroundRepeatValidator.java
│ │ │ │ │ │ ├── BackgroundSizeValidator.java
│ │ │ │ │ │ └── package-info.java
│ │ │ │ │ ├── border
│ │ │ │ │ │ ├── BorderPropertyValidator.java
│ │ │ │ │ │ ├── BorderRadiusPropertyValidator.java
│ │ │ │ │ │ ├── BorderRadiusValidator.java
│ │ │ │ │ │ ├── BorderSpacingValidator.java
│ │ │ │ │ │ ├── BorderValidator.java
│ │ │ │ │ │ └── package-info.java
│ │ │ │ │ ├── liststyle
│ │ │ │ │ │ ├── ListStyleImageValidator.java
│ │ │ │ │ │ ├── ListStylePositionValidator.java
│ │ │ │ │ │ ├── ListStyleTypeValidator.java
│ │ │ │ │ │ ├── ListStyleValidator.java
│ │ │ │ │ │ └── package-info.java
│ │ │ │ │ └── package-info.java
│ │ │ │ │ └── valueelement
│ │ │ │ │ ├── AutoValidator.java
│ │ │ │ │ ├── BlendModeValidator.java
│ │ │ │ │ ├── BorderStyleValidator.java
│ │ │ │ │ ├── BorderWidthValidator.java
│ │ │ │ │ ├── BoxValidator.java
│ │ │ │ │ ├── ColorValidator.java
│ │ │ │ │ ├── CueValidator.java
│ │ │ │ │ ├── DelimiterValidator.java
│ │ │ │ │ ├── HashValidator.java
│ │ │ │ │ ├── IdentifierValidator.java
│ │ │ │ │ ├── ImageValidator.java
│ │ │ │ │ ├── MarginWidthValidator.java
│ │ │ │ │ ├── MaxWidthHeightValidator.java
│ │ │ │ │ ├── MinWidthHeightValidator.java
│ │ │ │ │ ├── NoneValidator.java
│ │ │ │ │ ├── OutlineColorValidator.java
│ │ │ │ │ ├── OutlineStyleValidator.java
│ │ │ │ │ ├── OutlineWidthValidator.java
│ │ │ │ │ ├── OverflowValidator.java
│ │ │ │ │ ├── PaddingWidthValidator.java
│ │ │ │ │ ├── PauseValidator.java
│ │ │ │ │ ├── RadiusValidator.java
│ │ │ │ │ ├── ShapeBoxValidator.java
│ │ │ │ │ ├── SizeValidator.java
│ │ │ │ │ ├── StringValidator.java
│ │ │ │ │ ├── TextDecorationStyleValidator.java
│ │ │ │ │ ├── UriValidator.java
│ │ │ │ │ ├── WidthHeightValidator.java
│ │ │ │ │ ├── ZoomValidator.java
│ │ │ │ │ ├── dimension
│ │ │ │ │ ├── AngleValidator.java
│ │ │ │ │ ├── DimensionValidator.java
│ │ │ │ │ ├── FrequencyValidator.java
│ │ │ │ │ ├── LengthValidator.java
│ │ │ │ │ ├── ResolutionValidator.java
│ │ │ │ │ ├── TimeValidator.java
│ │ │ │ │ └── package-info.java
│ │ │ │ │ ├── flex
│ │ │ │ │ ├── FlexBasisValidator.java
│ │ │ │ │ ├── FlexDirectionValidator.java
│ │ │ │ │ ├── FlexGrowValidator.java
│ │ │ │ │ ├── FlexShrinkValidator.java
│ │ │ │ │ ├── FlexWrapValidator.java
│ │ │ │ │ └── package-info.java
│ │ │ │ │ ├── function
│ │ │ │ │ ├── BasicShapeValidator.java
│ │ │ │ │ ├── FunctionValidator.java
│ │ │ │ │ └── package-info.java
│ │ │ │ │ ├── numeric
│ │ │ │ │ ├── IntegerRangeValidator.java
│ │ │ │ │ ├── IntegerSetValidator.java
│ │ │ │ │ ├── IntegerValidator.java
│ │ │ │ │ ├── NumberRangeValidator.java
│ │ │ │ │ ├── NumberValidator.java
│ │ │ │ │ ├── PercentageValidator.java
│ │ │ │ │ └── package-info.java
│ │ │ │ │ └── package-info.java
│ │ │ └── pseudo
│ │ │ │ ├── StandardPseudoComponent.java
│ │ │ │ ├── StandardPseudoComponentFactory.java
│ │ │ │ ├── package-info.java
│ │ │ │ ├── pseudofunction
│ │ │ │ ├── StandardPseudoFunction.java
│ │ │ │ ├── StandardPseudoFunctionFactory.java
│ │ │ │ ├── UnknownPseudoFunction.java
│ │ │ │ ├── package-info.java
│ │ │ │ └── standard
│ │ │ │ │ ├── Any.java
│ │ │ │ │ ├── Current.java
│ │ │ │ │ ├── Dir.java
│ │ │ │ │ ├── Drop.java
│ │ │ │ │ ├── Has.java
│ │ │ │ │ ├── Lang.java
│ │ │ │ │ ├── Matches.java
│ │ │ │ │ ├── Not.java
│ │ │ │ │ ├── NthChild.java
│ │ │ │ │ ├── NthColumn.java
│ │ │ │ │ ├── NthLastChild.java
│ │ │ │ │ ├── NthLastColumn.java
│ │ │ │ │ ├── NthLastOfType.java
│ │ │ │ │ ├── NthOfType.java
│ │ │ │ │ └── package-info.java
│ │ │ │ └── pseudoidentifier
│ │ │ │ ├── StandardPseudoIdentifier.java
│ │ │ │ ├── StandardPseudoIdentifierFactory.java
│ │ │ │ ├── UnknownPseudoIdentifier.java
│ │ │ │ ├── package-info.java
│ │ │ │ └── standard
│ │ │ │ ├── Active.java
│ │ │ │ ├── After.java
│ │ │ │ ├── AnyLink.java
│ │ │ │ ├── Backdrop.java
│ │ │ │ ├── Before.java
│ │ │ │ ├── Blank.java
│ │ │ │ ├── Checked.java
│ │ │ │ ├── Current.java
│ │ │ │ ├── Default.java
│ │ │ │ ├── Disabled.java
│ │ │ │ ├── Drop.java
│ │ │ │ ├── Empty.java
│ │ │ │ ├── Enabled.java
│ │ │ │ ├── First.java
│ │ │ │ ├── FirstChild.java
│ │ │ │ ├── FirstLetter.java
│ │ │ │ ├── FirstLine.java
│ │ │ │ ├── FirstOfType.java
│ │ │ │ ├── Focus.java
│ │ │ │ ├── FocusWithin.java
│ │ │ │ ├── Fullscreen.java
│ │ │ │ ├── Future.java
│ │ │ │ ├── GrammarError.java
│ │ │ │ ├── Hover.java
│ │ │ │ ├── InRange.java
│ │ │ │ ├── InactiveSelection.java
│ │ │ │ ├── Indeterminate.java
│ │ │ │ ├── Invalid.java
│ │ │ │ ├── LastChild.java
│ │ │ │ ├── LastOfType.java
│ │ │ │ ├── Left.java
│ │ │ │ ├── Link.java
│ │ │ │ ├── Marker.java
│ │ │ │ ├── OnlyChild.java
│ │ │ │ ├── OnlyOfType.java
│ │ │ │ ├── Optional.java
│ │ │ │ ├── OutOfRange.java
│ │ │ │ ├── Past.java
│ │ │ │ ├── Paused.java
│ │ │ │ ├── Placeholder.java
│ │ │ │ ├── PlaceholderShown.java
│ │ │ │ ├── Playing.java
│ │ │ │ ├── ReadOnly.java
│ │ │ │ ├── ReadWrite.java
│ │ │ │ ├── Required.java
│ │ │ │ ├── Right.java
│ │ │ │ ├── Root.java
│ │ │ │ ├── Scope.java
│ │ │ │ ├── Selection.java
│ │ │ │ ├── SpellingError.java
│ │ │ │ ├── Target.java
│ │ │ │ ├── UserInvalid.java
│ │ │ │ ├── Valid.java
│ │ │ │ ├── Visited.java
│ │ │ │ └── package-info.java
│ │ ├── package-info.java
│ │ ├── parser
│ │ │ ├── CssGrammar.java
│ │ │ ├── CssLexicalGrammar.java
│ │ │ ├── CssNodeBuilder.java
│ │ │ ├── CssParserBuilder.java
│ │ │ ├── TreeFactory.java
│ │ │ └── package-info.java
│ │ ├── tree
│ │ │ └── impl
│ │ │ │ ├── AtKeywordTreeImpl.java
│ │ │ │ ├── AtRuleBlockTreeImpl.java
│ │ │ │ ├── AtRuleTreeImpl.java
│ │ │ │ ├── AttributeMatcherExpressionTreeImpl.java
│ │ │ │ ├── AttributeMatcherTreeImpl.java
│ │ │ │ ├── AttributeSelectorTreeImpl.java
│ │ │ │ ├── BracketBlockTreeImpl.java
│ │ │ │ ├── CaseInsensitiveFlagTreeImpl.java
│ │ │ │ ├── ClassSelectorTreeImpl.java
│ │ │ │ ├── CompoundSelectorTreeImpl.java
│ │ │ │ ├── CssTree.java
│ │ │ │ ├── DeclarationsTreeImpl.java
│ │ │ │ ├── DelimiterTreeImpl.java
│ │ │ │ ├── DimensionTreeImpl.java
│ │ │ │ ├── FunctionTreeImpl.java
│ │ │ │ ├── HashTreeImpl.java
│ │ │ │ ├── IdSelectorTreeImpl.java
│ │ │ │ ├── IdentifierTreeImpl.java
│ │ │ │ ├── ImportantTreeImpl.java
│ │ │ │ ├── InternalSyntaxSpacing.java
│ │ │ │ ├── InternalSyntaxToken.java
│ │ │ │ ├── InternalSyntaxTrivia.java
│ │ │ │ ├── KeyframesSelectorTreeImpl.java
│ │ │ │ ├── LiteralTreeImpl.java
│ │ │ │ ├── NamespaceTreeImpl.java
│ │ │ │ ├── NumberTreeImpl.java
│ │ │ │ ├── ParenthesisBlockTreeImpl.java
│ │ │ │ ├── PercentageTreeImpl.java
│ │ │ │ ├── PropertyDeclarationTreeImpl.java
│ │ │ │ ├── PropertyTreeImpl.java
│ │ │ │ ├── PseudoFunctionTreeImpl.java
│ │ │ │ ├── PseudoIdentifierTreeImpl.java
│ │ │ │ ├── PseudoSelectorTreeImpl.java
│ │ │ │ ├── RulesetBlockTreeImpl.java
│ │ │ │ ├── RulesetTreeImpl.java
│ │ │ │ ├── SelectorCombinationList.java
│ │ │ │ ├── SelectorCombinatorTreeImpl.java
│ │ │ │ ├── SelectorTreeImpl.java
│ │ │ │ ├── SelectorsTreeImpl.java
│ │ │ │ ├── StringTreeImpl.java
│ │ │ │ ├── StyleSheetTreeImpl.java
│ │ │ │ ├── SyntaxList.java
│ │ │ │ ├── TypeSelectorTreeImpl.java
│ │ │ │ ├── UnicodeRangeTreeImpl.java
│ │ │ │ ├── UnitTreeImpl.java
│ │ │ │ ├── UriContentTreeImpl.java
│ │ │ │ ├── UriTreeImpl.java
│ │ │ │ ├── ValueTreeImpl.java
│ │ │ │ ├── VariableDeclarationTreeImpl.java
│ │ │ │ ├── VariableTreeImpl.java
│ │ │ │ └── package-info.java
│ │ └── visitors
│ │ │ ├── CharsetAwareVisitor.java
│ │ │ ├── CssVisitorContext.java
│ │ │ ├── Issues.java
│ │ │ ├── cpd
│ │ │ ├── CpdVisitor.java
│ │ │ └── package-info.java
│ │ │ ├── highlighter
│ │ │ ├── SyntaxHighlighterVisitor.java
│ │ │ └── package-info.java
│ │ │ ├── metrics
│ │ │ ├── CommentLinesVisitor.java
│ │ │ ├── ComplexityInFunctionsVisitor.java
│ │ │ ├── ComplexityVisitor.java
│ │ │ ├── CssCommentAnalyser.java
│ │ │ ├── FunctionsVisitor.java
│ │ │ ├── LinesOfCodeVisitor.java
│ │ │ ├── MetricsVisitor.java
│ │ │ ├── StatementsVisitor.java
│ │ │ └── package-info.java
│ │ │ └── package-info.java
│ │ └── plugins
│ │ └── css
│ │ └── api
│ │ ├── CssCheck.java
│ │ ├── CustomCssRulesDefinition.java
│ │ ├── package-info.java
│ │ ├── tree
│ │ ├── AtKeywordTree.java
│ │ ├── AtRuleBlockTree.java
│ │ ├── AtRuleTree.java
│ │ ├── AttributeMatcherExpressionTree.java
│ │ ├── AttributeMatcherTree.java
│ │ ├── AttributeSelectorTree.java
│ │ ├── BracketBlockTree.java
│ │ ├── CaseInsensitiveFlagTree.java
│ │ ├── ClassSelectorTree.java
│ │ ├── CompoundSelectorTree.java
│ │ ├── DeclarationTree.java
│ │ ├── DeclarationsTree.java
│ │ ├── DelimiterTree.java
│ │ ├── DimensionTree.java
│ │ ├── FunctionTree.java
│ │ ├── HashTree.java
│ │ ├── IdSelectorTree.java
│ │ ├── IdentifierTree.java
│ │ ├── ImportantTree.java
│ │ ├── KeyframesSelectorTree.java
│ │ ├── LiteralTree.java
│ │ ├── NamespaceTree.java
│ │ ├── NumberTree.java
│ │ ├── ParenthesisBlockTree.java
│ │ ├── PercentageTree.java
│ │ ├── PropertyDeclarationTree.java
│ │ ├── PropertyTree.java
│ │ ├── PseudoComponentTree.java
│ │ ├── PseudoFunctionTree.java
│ │ ├── PseudoIdentifierTree.java
│ │ ├── PseudoSelectorTree.java
│ │ ├── RulesetBlockTree.java
│ │ ├── RulesetTree.java
│ │ ├── SelectorCombinatorTree.java
│ │ ├── SelectorTree.java
│ │ ├── SelectorsTree.java
│ │ ├── SimpleSelectorTree.java
│ │ ├── StatementTree.java
│ │ ├── StringTree.java
│ │ ├── StyleSheetTree.java
│ │ ├── SyntaxSpacing.java
│ │ ├── SyntaxToken.java
│ │ ├── SyntaxTrivia.java
│ │ ├── Tree.java
│ │ ├── TypeSelectorTree.java
│ │ ├── UnicodeRangeTree.java
│ │ ├── UnitTree.java
│ │ ├── UriContentTree.java
│ │ ├── UriTree.java
│ │ ├── ValueTree.java
│ │ ├── VariableDeclarationTree.java
│ │ ├── VariableTree.java
│ │ └── package-info.java
│ │ └── visitors
│ │ ├── DoubleDispatchVisitor.java
│ │ ├── DoubleDispatchVisitorCheck.java
│ │ ├── SubscriptionVisitor.java
│ │ ├── SubscriptionVisitorCheck.java
│ │ ├── TreeVisitor.java
│ │ ├── TreeVisitorContext.java
│ │ └── issue
│ │ ├── FileIssue.java
│ │ ├── Issue.java
│ │ ├── IssueLocation.java
│ │ ├── LineIssue.java
│ │ ├── PreciseIssue.java
│ │ └── package-info.java
│ └── test
│ ├── java
│ └── org
│ │ └── sonar
│ │ └── css
│ │ ├── CustomCssRulesDefinitionTest.java
│ │ ├── model
│ │ ├── ColorTest.java
│ │ ├── atrule
│ │ │ └── StandardAtRuleFactoryTest.java
│ │ ├── function
│ │ │ └── StandardFunctionFactoryTest.java
│ │ ├── property
│ │ │ └── StandardPropertyFactoryTest.java
│ │ └── pseudo
│ │ │ ├── StandardPseudoComponentFactoryTest.java
│ │ │ ├── pseudofunction
│ │ │ └── StandardPseudoFunctionFactoryTest.java
│ │ │ └── pseudoidentifier
│ │ │ └── StandardPseudoIdentifierFactoryTest.java
│ │ ├── parser
│ │ ├── AtKeywordTreeTest.java
│ │ ├── AtRuleBlockTreeTest.java
│ │ ├── AtRuleTreeTest.java
│ │ ├── AttributeMatcherExpressionTreeTest.java
│ │ ├── AttributeMatcherTreeTest.java
│ │ ├── AttributeSelectorTreeTest.java
│ │ ├── BOMTreeTest.java
│ │ ├── BracketBlockTreeTest.java
│ │ ├── CaseInsensitiveFlagTreeTest.java
│ │ ├── ClassSelectorTreeTest.java
│ │ ├── CommentTreeTest.java
│ │ ├── CompoundSelectorTreeTest.java
│ │ ├── DeclarationTreeTest.java
│ │ ├── DeclarationsTreeTest.java
│ │ ├── DimensionTreeTest.java
│ │ ├── FunctionTreeTest.java
│ │ ├── HashTreeTest.java
│ │ ├── IdSelectorTreeTest.java
│ │ ├── IdentifierTreeTest.java
│ │ ├── ImportantTreeTest.java
│ │ ├── KeyframesSelectorTreeTest.java
│ │ ├── NamespaceTreeTest.java
│ │ ├── NumberTreeTest.java
│ │ ├── ParenthesisBlockTreeTest.java
│ │ ├── PercentageTreeTest.java
│ │ ├── PropertyDeclarationTreeTest.java
│ │ ├── PropertyTreeTest.java
│ │ ├── PseudoFunctionTreeTest.java
│ │ ├── PseudoIdentifierTreeTest.java
│ │ ├── PseudoSelectorTreeTest.java
│ │ ├── RulesetBlockTreeTest.java
│ │ ├── RulesetTreeTest.java
│ │ ├── SelectorCombinatorTreeTest.java
│ │ ├── SelectorTreeTest.java
│ │ ├── SelectorsTreeTest.java
│ │ ├── StringTreeTest.java
│ │ ├── StyleSheetTreeTest.java
│ │ ├── TreeTest.java
│ │ ├── TypeSelectorTreeTest.java
│ │ ├── UnitTreeTest.java
│ │ ├── UriContentTreeTest.java
│ │ ├── UriTreeTest.java
│ │ ├── ValueTreeTest.java
│ │ ├── VariableDeclarationTreeTest.java
│ │ └── VariableTreeTest.java
│ │ └── visitors
│ │ ├── cpd
│ │ └── CpdVisitorTest.java
│ │ ├── highlighter
│ │ └── SyntaxHighlighterVisitorTest.java
│ │ └── metrics
│ │ ├── CssCommentAnalyserTest.java
│ │ └── MetricsVisitorTest.java
│ └── resources
│ ├── animate.css
│ ├── animate.min.css
│ ├── demo.autoprefixed.css
│ ├── effeckt.autoprefixed.css
│ ├── form-elements.css
│ ├── metrics
│ ├── complexity.css
│ └── metrics.css
│ ├── normalize.css
│ └── starting-with-bom.css
├── its
└── plugin
│ ├── pom.xml
│ ├── projects
│ └── metrics
│ │ └── src
│ │ ├── source1.css
│ │ └── source2.css
│ └── src
│ └── test
│ ├── java
│ └── com
│ │ └── sonar
│ │ └── it
│ │ └── css
│ │ ├── IssueTest.java
│ │ ├── MetricsTest.java
│ │ └── Tests.java
│ └── resources
│ └── com
│ └── sonar
│ └── it
│ └── css
│ ├── empty-profile.xml
│ └── it-profile.xml
├── pom.xml
└── sonar-css-plugin
├── pom.xml
└── src
├── main
└── java
│ └── org
│ └── sonar
│ └── plugins
│ └── css
│ ├── CssChecks.java
│ ├── CssLanguage.java
│ ├── CssPlugin.java
│ ├── CssProfile.java
│ ├── CssRulesDefinition.java
│ ├── CssSquidSensor.java
│ ├── IssueSaver.java
│ └── package-info.java
└── test
├── java
└── org
│ └── sonar
│ └── plugins
│ └── css
│ ├── CssLanguageTest.java
│ ├── CssPluginTest.java
│ ├── CssProfileTest.java
│ ├── CssRulesDefinitionTest.java
│ └── CssSquidSensorTest.java
└── resources
├── issues.css
├── issuesWithBOM.css
├── measures.css
├── measuresWithBOM.css
├── minified
├── test-min.css
├── test.min.css
└── testmin.css
└── parsingError.css
/.gitignore:
--------------------------------------------------------------------------------
1 | # sonar-runner
2 | .sonar/
3 |
4 | # Maven
5 | target/
6 | *.versionsBackup
7 |
8 | # IntelliJ IDEA
9 | *.iws
10 | *.iml
11 | *.ipr
12 | .idea/
13 |
14 | # Eclipse
15 | .classpath
16 | .project
17 | .settings
18 |
19 | # ---- Mac OS X
20 | .DS_Store
21 | Icon?
22 | # Thumbnails
23 | ._*
24 | # Files that might appear on external disk
25 | .Spotlight-V100
26 | .Trashes
27 |
28 | # ---- Windows
29 | # Windows image file caches
30 | Thumbs.db
31 | # Folder config file
32 | Desktop.ini
33 |
34 | log.txt
35 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | SonarQube CSS Plugin
2 | ====================
3 |
4 | **Repository moved to https://github.com/racodond/sonar-css-plugin**
5 |
--------------------------------------------------------------------------------
/css-checks/src/main/resources/org/sonar/l10n/css/rules/css/S1131.html:
--------------------------------------------------------------------------------
1 |
2 | Trailing whitespaces are simply useless and should not stay in code. They may generate noise when comparing
3 | different versions of the same file. If you encounter issues from this rule, this probably means that you are not
4 | using an automated code formatter - which you should if you have the opportunity to do so.
5 |
6 |
--------------------------------------------------------------------------------
/css-checks/src/main/resources/org/sonar/l10n/css/rules/css/S1134.html:
--------------------------------------------------------------------------------
1 |
2 | FIXME
tags are commonly used to mark places where a bug is suspected, but which the developer wants to
3 | deal with later. Sometimes the developer will not have the time or will simply forget to get back to that tag. This
4 | rule is meant to track those tags, and ensure that they do not go unnoticed.
5 |
6 |
7 | Noncompliant Code Example
8 |
9 | /* FIXME: blabla */
10 | h1 {
11 | color: green;
12 | }
13 |
14 | h1 {
15 | color: green; /* FIXME: blabla */
16 | }
17 |
18 |
--------------------------------------------------------------------------------
/css-checks/src/main/resources/org/sonar/l10n/css/rules/css/S1135.html:
--------------------------------------------------------------------------------
1 |
2 | TODO
tags are commonly used to mark places where some more code is required, but which the developer
3 | wants to implement later. Sometimes the developer will not have the time or will simply forget to get back to that
4 | tag. This rule is meant to track those tags, and ensure that they do not go unnoticed.
5 |
6 |
7 | Noncompliant Code Example
8 |
9 | /* TODO: blabla */
10 | h1 {
11 | color: green;
12 | }
13 |
14 | h1 {
15 | color: green; /* TODO: blabla */
16 | }
17 |
18 |
--------------------------------------------------------------------------------
/css-checks/src/main/resources/org/sonar/l10n/css/rules/css/S2260.html:
--------------------------------------------------------------------------------
1 |
2 | When the parser fails, it is possible to record the failure as an issue on the file. This way, not only is it
3 | possible to track the number of files that do not parse but also to easily find out why they do not parse.
4 |
5 |
--------------------------------------------------------------------------------
/css-checks/src/main/resources/org/sonar/l10n/css/rules/css/S2732.html:
--------------------------------------------------------------------------------
1 |
2 | Because of the way it's architected, Internet Explorer has hard limits on the size and complexity of the stylesheets
3 | it can support. Each sheet may only contain up to 4,095 selectors. Anything beyond those limits won't be
4 | supported.
5 |
6 |
7 | See
8 |
--------------------------------------------------------------------------------
/css-checks/src/main/resources/org/sonar/l10n/css/rules/css/S2735.html:
--------------------------------------------------------------------------------
1 |
2 | Because of the way it's architected, Internet Explorer has hard limits on the size and complexity of the stylesheets
3 | it can support. Each sheet may only @import 31 other sheets. Anything beyond those limits won't be supported.
4 |
5 |
6 | See
7 |
--------------------------------------------------------------------------------
/css-checks/src/main/resources/org/sonar/l10n/css/rules/css/bom-utf8-files.html:
--------------------------------------------------------------------------------
1 | As stated in the Unicode specifications, use of a BOM is neither required nor recommended for UTF-8 files.
2 |
3 | See
4 |
8 |
--------------------------------------------------------------------------------
/css-checks/src/main/resources/org/sonar/l10n/css/rules/css/case-insensitive-flag.html:
--------------------------------------------------------------------------------
1 |
2 | The case-insensitive flag is not currently supported by all browsers (Internet Explorer and Edge for instance). Thus, it
3 | should not be used.
4 |
5 |
6 | Noncompliant Code Example
7 |
8 | [frame=hsides i] {
9 | border-style: solid none;
10 | }
11 |
12 |
13 | See
14 |
18 |
--------------------------------------------------------------------------------
/css-checks/src/main/resources/org/sonar/l10n/css/rules/css/case.html:
--------------------------------------------------------------------------------
1 |
2 | Even though CSS syntax is case-insensitive (except for variables), sharing some style conventions is a key point to
3 | make it possible for a team to efficiently collaborate.
4 |
5 | This rule allows to check that all properties, functions and variables are written in lowercase.
6 |
7 | Noncompliant Code Example
8 |
9 | .mybox {
10 | COLOR: blue; /* Noncompliant */
11 | }
12 |
13 | .mybox {
14 | color: RGB(255,255,255); /* Noncompliant */
15 | }
16 |
17 | :root {
18 | --MyVar: red; /* Noncompliant */;
19 | }
20 |
21 |
22 | Compliant Solution
23 |
24 | .mybox {
25 | color: blue;
26 | }
27 |
28 | .mybox {
29 | color: rgb(255,255,255);
30 | }
31 |
32 | :root {
33 | --myvar: red;
34 | }
35 |
36 |
--------------------------------------------------------------------------------
/css-checks/src/main/resources/org/sonar/l10n/css/rules/css/charset-first.html:
--------------------------------------------------------------------------------
1 |
2 | The @charset
rule is invalid if it is not the first element in the style sheet or if it is preceded by
3 | any character including whitespace.
4 |
5 |
6 | Noncompliant Code Example
7 |
8 | @charset "UTF-8" /* Noncompliant: preceding whitespaces */
9 |
10 |
11 | See
12 |
17 |
--------------------------------------------------------------------------------
/css-checks/src/main/resources/org/sonar/l10n/css/rules/css/comment-regular-expression.html:
--------------------------------------------------------------------------------
1 |
2 | This rule template can be used to create rules which will be triggered when a comment matches a given regular
3 | expression.
4 |
5 |
6 | For example, one can create a rule with the regular expression ".*WTF.*
" to match all comment
7 | containing
8 | "WTF".
9 |
10 |
11 | Note that, in order to match WTF regardless of the case, the "(?i)
" modifier can be prepended to the
12 | expression, as in "(?i).*WTF.*
".
13 |
14 |
15 |
16 | See Java
17 | documentation for detailed regular expression syntax.
18 |
19 |
--------------------------------------------------------------------------------
/css-checks/src/main/resources/org/sonar/l10n/css/rules/css/deprecated-ie-static-filters.html:
--------------------------------------------------------------------------------
1 | Static filters are deprecated since Internet Explorer 9 and should not be used anymore.
2 |
3 | Noncompliant Code Example
4 |
5 | img {
6 | filter: alpha(opacity=40); /* Noncompliant: 'alpha' is an Internet Explorer static filter */
7 | }
8 |
9 | See
10 |
--------------------------------------------------------------------------------
/css-checks/src/main/resources/org/sonar/l10n/css/rules/css/deprecated-system-colors.html:
--------------------------------------------------------------------------------
1 | System colors are deprecated and should not be used anymore.
2 |
3 | Noncompliant Code Example
4 |
5 | .mybox {
6 | color: ActiveBorder;
7 | }
8 |
9 |
10 | See
11 |
14 |
--------------------------------------------------------------------------------
/css-checks/src/main/resources/org/sonar/l10n/css/rules/css/empty-declaration.html:
--------------------------------------------------------------------------------
1 | Empty declarations are useless and should be removed to avoid confusing developers.
2 |
3 | Noncompliant Code Example
4 |
5 | .foo { ; } /* Noncompliant */
6 |
7 | .foo {
8 | ; /* Noncompliant */
9 | color: green;
10 | }
11 |
12 |
--------------------------------------------------------------------------------
/css-checks/src/main/resources/org/sonar/l10n/css/rules/css/empty-rules.html:
--------------------------------------------------------------------------------
1 |
2 | An empty rule is one that doesn't contain any properties or variable declarations. A lot of times, empty rules
3 | appear as a result of refactoring without further cleanup. Eliminating empty rules results in smaller file sizes and
4 | less style information for the browser to deal with.
5 |
6 |
7 | Noncompliant Code Example
8 |
9 | .foo {
10 | }
11 |
12 | .foo {
13 | /* blabla */
14 | }
15 |
16 | @font-face {
17 | }
18 |
19 |
20 | See
21 |
24 |
--------------------------------------------------------------------------------
/css-checks/src/main/resources/org/sonar/l10n/css/rules/css/experimental-selector-combinator-usage.html:
--------------------------------------------------------------------------------
1 |
2 | Experimental column combinator (||
) and descendant combinator (>>
) should not be used in
3 | production code.
4 |
5 |
6 | Noncompliant Code Example
7 |
8 | div >> p {
9 | }
10 |
11 | col.selected || td {
12 | }
13 |
14 |
15 | See
16 |
22 |
--------------------------------------------------------------------------------
/css-checks/src/main/resources/org/sonar/l10n/css/rules/css/font-faces.html:
--------------------------------------------------------------------------------
1 |
2 | Web fonts are growing in popularity and use of @font-face
is on the rise. However, using web fonts
3 | comes with performance implications as font files can be quite large and some browsers block rendering while
4 | downloading them.
5 |
6 |
7 | See
8 |
--------------------------------------------------------------------------------
/css-checks/src/main/resources/org/sonar/l10n/css/rules/css/important-position.html:
--------------------------------------------------------------------------------
1 |
2 | The !important
statement must be placed at the end of the line, immediately before the semicolon,
3 | otherwise it will not be taken into account by the browser.
4 |
5 |
6 | Noncompliant Code Example
7 |
8 | .mybox {
9 | width: !important 100px; /* Noncompliant */
10 | border: 1px solid !important black; /* Noncompliant */
11 | }
12 |
13 |
14 | Compliant Solution
15 |
16 | .mybox {
17 | width: 100px !important; /* Compliant */
18 | border: 1px solid black !important; /* Compliant */
19 | }
20 |
21 |
--------------------------------------------------------------------------------
/css-checks/src/main/resources/org/sonar/l10n/css/rules/css/important.html:
--------------------------------------------------------------------------------
1 |
2 | The !important
annotation is used to artificially increase the specificity of a given property value in
3 | a rule. This is usually an indication that the specificity of the entire CSS has gotten a bit out of control and
4 | needs to be refactored. The more frequently !important
is found in CSS, the more likely it is that
5 | developers are having trouble styling parts of a page effectively.
6 |
7 |
8 | Noncompliant Code Example
9 |
10 | .mybox {
11 | color: red !important;
12 | }
13 |
14 |
15 | See
16 |
19 |
--------------------------------------------------------------------------------
/css-checks/src/main/resources/org/sonar/l10n/css/rules/css/inlining-font-files.html:
--------------------------------------------------------------------------------
1 |
2 | Inlining fonts avoids the overhead of an HTTP request, but that advantage may not outweigh the many downsides. It’ll
3 | affect your actual and perceived performance, thereby making your site load slower. It also disables font
4 | format negotiation, progressive rendering, parallel downloading, and lazy loading.
5 |
6 |
7 | Noncompliant Code Example
8 |
9 | @font-face {
10 | font-family: MyFontFamily;
11 | src: url(data:application/x-font-woff;charset=utf-8;base64,d09GRgABAAAAAFhIABAAAAAAm0wAAQAAAAA...):
12 | }
13 |
14 |
15 | See
16 |
20 |
--------------------------------------------------------------------------------
/css-checks/src/main/resources/org/sonar/l10n/css/rules/css/leading-zeros.html:
--------------------------------------------------------------------------------
1 | For readability reasons, remove the leading zeros of declaration values.
2 |
3 | Noncompliant Code Example
4 |
5 | h1 {
6 | font-size: 0.9em;
7 | }
8 |
9 |
10 | Compliant Solution
11 |
12 | h1 {
13 | font-size: .9em;
14 | }
15 |
--------------------------------------------------------------------------------
/css-checks/src/main/resources/org/sonar/l10n/css/rules/css/line-length.html:
--------------------------------------------------------------------------------
1 | Having to scroll horizontally makes it harder to get a quick overview and understanding of any piece of code.
2 |
3 | Noncompliant Code Example
4 | With maximum length set to 50:
5 |
6 | /* Noncompliant: split this comment into several lines blabla blabla blabla blabla blabla blabla */
7 | .mybox {
8 | color: red; background-color: red; color: red; background-color: red; /* Noncompliant */
9 | }
10 |
11 |
12 | Compliant Solution
13 | With maximum length set to 50:
14 |
15 | /* blabla blabla blabla blabla blabla blabla */
16 | /* blabla blabla blabla blabla blabla blabla */
17 | .mybox {
18 | color: red;
19 | background-color: red;
20 | color: red;
21 | background-color: red;
22 | }
23 |
24 |
--------------------------------------------------------------------------------
/css-checks/src/main/resources/org/sonar/l10n/css/rules/css/nosonar.html:
--------------------------------------------------------------------------------
1 |
2 | Any issue to quality rule can be deactivated with the NOSONAR
marker. This marker is pretty useful to
3 | exclude false-positive results but it can also be used abusively to hide real quality flaws.
4 |
5 | This rule raises an issue when NOSONAR
is used.
6 |
7 | Noncompliant Code Example
8 |
9 | h1 { /* NOSONAR: blabla */
10 | }
11 |
12 |
--------------------------------------------------------------------------------
/css-checks/src/main/resources/org/sonar/l10n/css/rules/css/one-declaration-per-line.html:
--------------------------------------------------------------------------------
1 | For readability reasons, each declaration should be defined on a separate line.
2 |
3 | Noncompliant Code Example
4 |
5 | .mybox {
6 | background-color: blue;
7 | color: red; border-color: green;
8 | }
9 |
10 |
11 | Compliant Solution
12 |
13 | .mybox {
14 | background-color: blue;
15 | color: red;
16 | border-color: green;
17 | }
18 |
19 |
--------------------------------------------------------------------------------
/css-checks/src/main/resources/org/sonar/l10n/css/rules/css/overspecific-selectors.html:
--------------------------------------------------------------------------------
1 |
2 | Avoid using too specific selectors. This means that when you have any style you want that is an exception from the
3 | common styling, it will be easier to implement it and override the default applied styling.
4 |
5 |
6 | Noncompliant Code Example
7 | With a maximum depth of 3:
8 |
9 | div#container div#header ul#navigation li{
10 | float: left;
11 | }
12 |
13 |
14 | Compliant Code Example
15 | With a maximum depth of 3:
16 |
17 | #navigation li{
18 | float: left;
19 | }
20 |
21 |
22 | See
23 |
27 |
28 |
--------------------------------------------------------------------------------
/css-checks/src/main/resources/org/sonar/l10n/css/rules/css/sheet-too-many-rules.html:
--------------------------------------------------------------------------------
1 |
2 | A stylesheet that grows too much becomes harder to understand and therefore to maintain. Above a specific threshold,
3 | it is strongly advised to refactor it into smaller stylesheets which focus on well defined scopes.
4 |
5 |
--------------------------------------------------------------------------------
/css-checks/src/main/resources/org/sonar/l10n/css/rules/css/tab-character.html:
--------------------------------------------------------------------------------
1 |
2 | Developers should not need to configure the tab width of their text editors in order to be able to read source code.
3 | So the use of tabulation character must be banned.
4 |
5 |
--------------------------------------------------------------------------------
/css-checks/src/main/resources/org/sonar/l10n/css/rules/css/template/experimental-identifier-usage.html:
--------------------------------------------------------------------------------
1 |
2 | Even though vendor-specific identifiers are guaranteed not to cause conflicts, it should be recognized that these
3 | extensions may also be subject to change at the vendor’s whim, as they don’t form part of the CSS specifications,
4 | even though they often mimic the proposed behavior of existing or forthcoming CSS identifiers. Thus, it is not
5 | recommended to use them in production code.
6 |
7 |
8 | The rule raises an issue when one of the following prefixes is found:
9 | [[vendors]]
10 |
11 | Noncompliant Code Example
12 |
13 | .mybox {
14 | display: flex;
15 | display: -ms-flexbox; /* Noncompliant */
16 | }
17 |
18 |
--------------------------------------------------------------------------------
/css-checks/src/main/resources/org/sonar/l10n/css/rules/css/template/obsolete-functions.html:
--------------------------------------------------------------------------------
1 | To make sure that your code will keep working as expected in the future, do not use obsolete functions:
2 |
3 | No longer supported by main vendors
4 | Support to be removed by main vendors
5 |
6 |
7 | Noncompliant Code Example
8 |
9 | .mybox {
10 | font-size: min(10px, 3em); /* Noncompliant */
11 | font-size: max(10px, 3em); /* Noncompliant */
12 | }
13 |
14 |
15 | Obsolete Functions
16 | [[obsoleteFunctions]]
17 |
--------------------------------------------------------------------------------
/css-checks/src/main/resources/org/sonar/l10n/css/rules/css/template/obsolete-properties.html:
--------------------------------------------------------------------------------
1 | To make sure that your code will keep working as expected in the future, do not use obsolete properties:
2 |
3 | No longer supported by main vendors
4 | Support to be removed by main vendors
5 |
6 |
7 | Noncompliant Code Example
8 |
9 | .mybox {
10 | azimuth: 30deg; /* Noncompliant */
11 | appearance: normal; /* Noncompliant */
12 | }
13 |
14 |
15 | Obsolete Properties
16 | [[obsoleteProperties]]
17 |
--------------------------------------------------------------------------------
/css-checks/src/main/resources/org/sonar/l10n/css/rules/css/template/obsolete-pseudos.html:
--------------------------------------------------------------------------------
1 | To make sure that your code will keep working as expected in the future, do not use obsolete peudo-elements and pseudo-classes:
2 |
3 | No longer supported by main vendors
4 | Support to be removed by main vendors
5 |
6 |
7 | Noncompliant Code Example
8 |
9 | :any(ol, ul, menu, dir) {
10 | list-style-type: square;
11 | }
12 |
13 |
14 | Obsolete Pseudo-Elements and Pseudo-Classes
15 | [[obsoletePseudos]]
16 |
--------------------------------------------------------------------------------
/css-checks/src/main/resources/org/sonar/l10n/css/rules/css/template/unknown-at-rules.html:
--------------------------------------------------------------------------------
1 |
2 | The list of supported CSS @-rules is growing quite large, and it's very easy to miss a typo.
3 |
4 |
5 | This rule checks each @-rule name to make sure that it is a known CSS @-rule. All vendor-prefixed @-rules are
6 | ignored because vendors may add in their own @-rules at any point in time.
7 |
8 |
9 | Noncompliant Code Example
10 |
11 | @abc { /* Noncompliant: 'abc' isn't a known @-rule */
12 | color: red;
13 | }
14 |
15 |
16 | Compliant Solution
17 |
18 | @import url("styles.css"); /* Compliant: 'import' is a known @-rule */
19 |
20 | @-moz-vendoratrule {} /* Compliant: '-moz-vendoratrule is a vendor @-rule */
21 |
22 |
23 | List of Known @-rules
24 | [[allAtRules]]
25 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/caseInsensitiveFlag.css:
--------------------------------------------------------------------------------
1 | [frame=hsides i] { /* Noncompliant ![sc=15;ec=16;el=+0]! !{Remove this usage of the case-insensitive flag.}! */
2 | border-style: solid none;
3 | }
4 |
5 | [frame=hsides] {
6 | border-style: solid none;
7 | }
8 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/charset/charsetFirst.css:
--------------------------------------------------------------------------------
1 | @charset "UTF-8";
2 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/charset/charsetFirstWithBOM.css:
--------------------------------------------------------------------------------
1 | @charset "UTF-8";
2 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/charset/charsetNotFirst.css:
--------------------------------------------------------------------------------
1 | @charset "UTF-8"; /* Noncompliant ![sc=2;ec=10;el=+0]! !{Move the @charset rule to the very beginning of the style sheet.}! */
2 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/commentRegularExpression.css:
--------------------------------------------------------------------------------
1 | /* wtf*/
2 | .mybox {
3 | color: red; /* WTF! */
4 | color: red; /* wtf */
5 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/custom/forbiddenProperties.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | color: green;
3 | }
4 |
5 | .mybox2 {
6 | background-color: blue;
7 | color: red;
8 | background-image: url("paper.gif");
9 | }
10 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/custom/forbiddenUrl.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | color: green;
3 | background-image: url(paper.gif); /* Noncompliant ![sc=25;ec=34]! !{Remove this usage of the forbidden "paper.gif" URL.}! */
4 |
5 | }
6 |
7 | .mybox2 {
8 | background-color: blue;
9 | color: red;
10 | background-image: url("paper.gif"); /* Noncompliant ![sc=25;ec=36]! !{Remove this usage of the forbidden "paper.gif" URL.}! */
11 | background-image: url("blabla.gif");
12 | }
13 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/doNotUseShorthandProperties.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | margin: 10px 5px; /* Noncompliant ![sc=3;ec=9;el=+0]! !{Replace this "margin" shorthand property with its longhand properties: margin-bottom, margin-left, margin-right, margin-top}! */
3 | padding: 10px 5px; /* Noncompliant */
4 | *margin: 10px 5px; /* Noncompliant */
5 | *padding: 10px 5px; /* Noncompliant */
6 | Margin: 10px 5px; /* Noncompliant */
7 | Padding: 10px 5px; /* Noncompliant */
8 | margin: 10px; /* Compliant: value is one single element */
9 | padding: 10px; /* Compliant: value is one single element */
10 | color: red;
11 | }
12 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/experimentalIdentifierUsage.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | display: flex;
3 | -ms-display: flex;
4 | display: -aa-flex;
5 | display: -moz-flex !important; /* Noncompliant ![sc=12;ec=21;el=+0]! !{Remove this usage of the experimental "-moz-flex" identifier.}! */
6 | display: -MS-flex; /* Noncompliant ![sc=12;ec=20;el=+0]! !{Remove this usage of the experimental "-MS-flex" identifier.}! */
7 | }
8 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/experimentalPseudoUsage.css:
--------------------------------------------------------------------------------
1 | #fullscreen:fullscreen > h1 { /* Noncompliant ![sc=13;ec=23;el=+0]! !{Remove this usage of the experimental "fullscreen" pseudo.}! */
2 | color: red;
3 | }
4 |
5 | #id:-moz-abc { /* Noncompliant ![sc=5;ec=13;el=+0]! !{Remove this usage of the experimental "abc" pseudo.}! */
6 | color: red;
7 | }
8 |
9 | p:dir(ltr) { /* Noncompliant ![sc=3;ec=6;el=+0]! !{Remove this usage of the experimental "dir" pseudo.}! */
10 | color: red;
11 | }
12 |
13 | p:-moz-abc(ltr) { /* Noncompliant ![sc=3;ec=11;el=+0]! !{Remove this usage of the experimental "abc" pseudo.}! */
14 | color: red;
15 | }
16 |
17 | p:empty {
18 | color: red;
19 | }
20 |
21 | p:not(.mybox) {
22 | color: red;
23 | }
24 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/experimentalSelectorCombinatorUsage.css:
--------------------------------------------------------------------------------
1 | div >> p { /* Noncompliant ![sc=5;ec=7;el=+0]! !{Remove this experimental selector combinator.}! */
2 |
3 | }
4 |
5 | col.selected || td { /* Noncompliant ![sc=14;ec=16;el=+0]! !{Remove this experimental selector combinator.}! */
6 | }
7 |
8 | div p {
9 | }
10 |
11 | div + p {
12 | }
13 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/fixmeTagPresence.css:
--------------------------------------------------------------------------------
1 | /* FIXME: blabla */ /* Noncompliant */
2 | h1 {
3 | color: green;
4 | }
5 |
6 | /* [FIXME] blabla */ /* Noncompliant */
7 | h1 {
8 | color: green;
9 | }
10 |
11 | /* Noncompliant ![sl=12]! */
12 | /* FIXME:
13 | - blabla
14 | - ...
15 | */
16 | h1 {
17 | color: green;
18 | }
19 |
20 | /* fixme: blabla */ /* Noncompliant */
21 | h1 {
22 | color: green;
23 | }
24 |
25 | /* Noncompliant ![sl=+1]! */
26 | /* fixme:
27 | fixme
28 | */
29 | h1 {
30 | color: green;
31 | }
32 |
33 | h1 {
34 | color: green; /* FIXME: blabla */ /* Noncompliant */
35 | }
36 |
37 | /* fixmeforthefirsttime */
38 | h1 {
39 | color: green;
40 | }
41 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/formatting/important.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | width: 100px !important;
3 | width: 100px ! important; /* Noncompliant ![sc=17;ec=28;el=+0]! !{Remove the whitespaces between "!" and "important".}! */
4 | width: 100px ! important ; /* Noncompliant ![sc=17;ec=28;el=+0]! !{Remove the whitespaces between "!" and "important".}! */
5 | width: 100px !important ;
6 | border: 1px solid black !important;
7 | width: !important 100px;
8 | border: ! important 1px solid black; /* Noncompliant ![sc=12;ec=24;el=+0]! !{Remove the whitespaces between "!" and "important".}! */
9 | border: 1px solid ! important black; /* Noncompliant ![sc=22;ec=34;el=+0]! !{Remove the whitespaces between "!" and "important".}! */
10 | border: 1px solid black !important
11 | }
12 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/idsinselector.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | display: block;
3 | }
4 |
5 | div {
6 | display: block;
7 | }
8 |
9 | #mybox { /* Noncompliant ![sc=1;ec=7;el=+0]! !{Remove ID "mybox" from this selector.}! */
10 | display: block;
11 | }
12 |
13 | .mybox #go { /* Noncompliant ![sc=8;ec=11;el=+0]! !{Remove ID "go" from this selector.}! */
14 | color: red;
15 | }
16 |
17 | .mybox #go, /* Noncompliant ![sc=8;ec=11;el=+0]! !{Remove ID "go" from this selector.}! */
18 | .mybox2 #abc { /* Noncompliant ![sc=9;ec=13;el=+0]! !{Remove ID "abc" from this selector.}! */
19 | color: red;
20 | }
21 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/ieStaticFilters.css:
--------------------------------------------------------------------------------
1 | img {
2 | filter: alpha(opacity=40); /* Noncompliant ![sc=11;ec=28;el=+0]! !{Remove this usage of the "alpha" Internet Explorer static filter.}! */
3 | }
4 |
5 | .mybox {
6 | color: red;
7 | }
8 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/import.css:
--------------------------------------------------------------------------------
1 | @charset UTF-8;
2 |
3 | @import url(more.css); /* Noncompliant ![sc=1;ec=8;el=+0]! !{Remove this @import rule.}! */
4 | @import url(andmore.css); /* Noncompliant ![sc=1;ec=8;el=+0]! !{Remove this @import rule.}! */
5 |
6 | a {
7 | color: black;
8 | }
9 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/import/importFirst1.css:
--------------------------------------------------------------------------------
1 | @import "mystyle.css";
2 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/import/importFirst2.css:
--------------------------------------------------------------------------------
1 | @import "mystyle.css";
2 |
3 | @keyframes fade {}
4 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/import/importFirst3.css:
--------------------------------------------------------------------------------
1 | @import "mystyle.css";
2 | @import "mystyle2.css";
3 |
4 | @keyframes fade {}
5 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/import/importFirst4.css:
--------------------------------------------------------------------------------
1 | @import "mystyle.css";
2 | @import "mystyle2.css";
3 |
4 | .mybox {
5 | }
6 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/import/importFirstWithCharset.css:
--------------------------------------------------------------------------------
1 | @charset "UTF-8"
2 |
3 | @import "mystyle.css";
4 | @import "mystyle2.css";
5 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/import/importNotFirst1.css:
--------------------------------------------------------------------------------
1 | @keyframes fade {}
2 |
3 | @keyframes fade {}
4 |
5 | @import "mystyle.css"; /* Noncompliant ![sc=1;ec=8;el=+0;secondary=1,3]! !{Move this @import rule before all the other at-rules and style rules.}! */
6 |
7 | @keyframes fade {}
8 |
9 | @import "mystyle2.css"; /* Noncompliant ![sc=1;ec=8;el=+0;secondary=1,3,7]! !{Move this @import rule before all the other at-rules and style rules.}! */
10 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/import/importNotFirst2.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | }
3 |
4 | {
5 | }
6 |
7 | @import "mystyle.css"; /* Noncompliant ![sc=1;ec=8;el=+0;secondary=1,4]! !{Move this @import rule before all the other at-rules and style rules.}! */
8 |
9 | .mybox {
10 | }
11 |
12 | @import "mystyle2.css"; /* Noncompliant ![sc=1;ec=8;el=+0;secondary=1,4,9]! !{Move this @import rule before all the other at-rules and style rules.}! */
13 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/importantPosition.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | width: 100px !important;
3 | width: 100px ! important;
4 | width: 100px ! important ;
5 | width: 100px !important ;
6 | border: 1px solid black !important;
7 | width: !important 100px; /* Noncompliant ![sc=11;ec=21;el=+0]! !{Move the "!important" annotation to the end of the declaration.}! */
8 | border: ! important 1px solid black; /* Noncompliant ![sc=12;ec=24;el=+0]! !{Move the "!important" annotation to the end of the declaration.}! */
9 | border: 1px solid ! important black; /* Noncompliant ![sc=22;ec=34;el=+0]! !{Move the "!important" annotation to the end of the declaration.}! */
10 | border: 1px solid black !important
11 | }
12 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/leadingZeros.css:
--------------------------------------------------------------------------------
1 | h1 {
2 | font-size: 0.9em; /* Noncompliant ![sc=13;ec=16;el=+0]! !{Remove the leading zero.}! */
3 | }
4 |
5 | /* Compliant */
6 | h1 {
7 | font-size: .9em;
8 | }
9 |
10 | /* Compliant */
11 | h1 {
12 | font-size: 0;
13 | }
14 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/lineLength.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | color: red; color: red; color: red; color: red;
3 | color: red; color: red; color: red;
4 | /* blabla blabla blabla blabla blabla */
5 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/lineLength30.css:
--------------------------------------------------------------------------------
1 | /* Noncompliant ![sl=5]! */
2 | /* Noncompliant ![sl=6]! */
3 | /* Noncompliant ![sl=7]! */
4 | .mybox {
5 | color: red; color: red; color: red; color: red;
6 | color: red; color: red; color: red;
7 | /* blabla blabla blabla blabla blabla */
8 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/lineLength50.css:
--------------------------------------------------------------------------------
1 | /* Noncompliant ![sl=3]! */
2 | .mybox {
3 | color: red; color: red; color: red; color: red;
4 | color: red; color: red; color: red;
5 | /* blabla blabla blabla blabla blabla */
6 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/maximumNumberOfRulesPerSheet10.css:
--------------------------------------------------------------------------------
1 | h1 {
2 | color:red;
3 | }
4 | h2 {
5 | color:red;
6 | }
7 | h3 {
8 | color:red;
9 | }
10 | h4 {
11 | color:red;
12 | }
13 | h5 {
14 | color:red;
15 | }
16 | h6 {
17 | color:red;
18 | }
19 | a {
20 | color:red;
21 | }
22 | div {
23 | color:red;
24 | }
25 | @font-face {
26 | font-family: 'MyFontFamily';
27 | }
28 | @font-face {
29 | font-family: 'MyFontFamily2';
30 | }
31 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/maximumNumberOfRulesPerSheet11.css:
--------------------------------------------------------------------------------
1 | h1 {
2 | color:red;
3 | }
4 | h2 {
5 | color:red;
6 | }
7 | h3 {
8 | color:red;
9 | }
10 | h4 {
11 | color:red;
12 | }
13 | h5 {
14 | color:red;
15 | }
16 | h6 {
17 | color:red;
18 | }
19 | a {
20 | color:red;
21 | }
22 | div {
23 | color:red;
24 | }
25 | @font-face {
26 | font-family: 'MyFontFamily';
27 | }
28 | @font-face {
29 | font-family: 'MyFontFamily2';
30 | }
31 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/maximumNumberOfRulesPerSheet9.css:
--------------------------------------------------------------------------------
1 | /* Noncompliant ![sl=0;effortToFix=2]! !{Reduce the number of rules. This sheet contains 11 rules, 2 more than the 9 allowed rules.}! */
2 | h1 {
3 | color:red;
4 | }
5 | h2 {
6 | color:red;
7 | }
8 | h3 {
9 | color:red;
10 | }
11 | h4 {
12 | color:red;
13 | }
14 | h5 {
15 | color:red;
16 | }
17 | h6 {
18 | color:red;
19 | }
20 | a {
21 | color:red;
22 | }
23 | div {
24 | color:red;
25 | }
26 | @font-face {
27 | font-family: 'MyFontFamily';
28 | }
29 | @font-face {
30 | font-family: 'MyFontFamily2';
31 | }
32 | @font-face {
33 | font-family: 'MyFontFamily2';
34 | }
35 |
36 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/noDuplication.css:
--------------------------------------------------------------------------------
1 | @media (min-width: 320px) {
2 | .box1 {
3 | border-color: orange;
4 | }
5 | .box2 {
6 | border-color: orangered;
7 | }
8 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/noParsingError.css:
--------------------------------------------------------------------------------
1 | .heart-icon {
2 | color: red;
3 | }
4 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/nosonarTagPresence.css:
--------------------------------------------------------------------------------
1 | h1 { /* NOSONAR: blabla */ /* Noncompliant */
2 | color: green;
3 | }
4 |
5 | h1 {
6 | color: green; /* [NOSONAR] blabla */ /* Noncompliant */
7 | }
8 |
9 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/notabcharacter.css:
--------------------------------------------------------------------------------
1 | h1 {
2 | color: red;
3 | }
4 | h2 {
5 | color: green;
6 | }
7 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/obsoleteFunctions.css:
--------------------------------------------------------------------------------
1 | p {
2 | font-size: min(10px, 3em); /* Noncompliant ![sc=14;ec=17;el=+0]! !{Remove this usage of the obsolete / not on W3C Standards track "min" function.}! */
3 | font-size: max(10px, 3em); /* Noncompliant ![sc=14;ec=17;el=+0]! !{Remove this usage of the obsolete / not on W3C Standards track "max" function.}! */
4 | }
5 |
6 | .mybox {
7 | background-image: -webkit-gradient(linear, left top, right top, from(red), to(#f06d06)); /* Noncompliant */ /* Noncompliant */
8 | background-image: -webkit-gradient(linear, left top, right top, from(red), color-stop(0%,#9d2d64)); /* Noncompliant */ /* Noncompliant */
9 | color: expression(); /* Noncompliant */
10 | }
11 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/obsoleteProperties.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | azimuth: 30deg; /* Noncompliant ![sc=3;ec=10;el=+0]! !{Remove this usage of the obsolete / not on W3C Standards track "azimuth" property.}! */
3 | Azimuth: 30deg; /* Noncompliant ![sc=3;ec=10;el=+0]! !{Remove this usage of the obsolete / not on W3C Standards track "azimuth" property.}! */
4 | appearance: normal; /* Noncompliant ![sc=3;ec=13;el=+0]! !{Remove this usage of the obsolete / not on W3C Standards track "appearance" property.}! */
5 | Appearance: normal; /* Noncompliant ![sc=3;ec=13;el=+0]! !{Remove this usage of the obsolete / not on W3C Standards track "appearance" property.}! */
6 | background-color: red;
7 | }
8 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/obsoletePseudos.css:
--------------------------------------------------------------------------------
1 | :any(ol, ul, menu, dir) { /* Noncompliant ![sc=2;ec=5;el=+0]! !{Remove this usage of the obsolete / not on W3C Standards track "any" pseudo.}! */
2 | list-style-type: square;
3 | }
4 |
5 | p:empty {
6 | color: red;
7 | }
8 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/overqualified.css:
--------------------------------------------------------------------------------
1 | div.mybox { /* Noncompliant !{Remove the name of this overqualified element.}! */
2 | color: red;
3 | }
4 |
5 | .mybox li.active { /* Noncompliant !{Remove the name of this overqualified element.}! */
6 | background: red;
7 | }
8 |
9 | /* Two different elements in different rules with the same class */
10 | li.active2 {
11 | color: red;
12 | }
13 |
14 | p.active2 {
15 | color: green;
16 | }
17 |
18 | .button:active,.link-goto:active {
19 | }
20 |
21 | .a-we,.z-b>a,.a-c>a{
22 | }
23 |
24 | p .test {}
25 | div.test {} /* Noncompliant !{Remove the name of this overqualified element.}! */
26 |
27 | p.test2 {}
28 | div.test2 {}
29 |
30 | #abc .test3 {}
31 | [target=_blank] .test4 {}
32 | li:hover .test5 {}
33 |
34 | table {}
35 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/overspecselectorCustom.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | color: red !important;
3 | }
4 |
5 | ul l p a {
6 | }
7 |
8 | ul:hover a.id #class a {
9 | }
10 |
11 | ul > div + a +li {
12 | }
13 |
14 | /* Noncompliant ![sl=+1;sc=1;ec=2;el=+2;secondary=+0,+0,+0,+1,+1,+2]! !{Simplify this over-specified selector. Maximum allowed depth: 5. Actual depth: 6}! */
15 | ul:hover #class a
16 | l p
17 | a {
18 | }
19 |
20 | /* Noncompliant ![sl=+1;sc=1;ec=4;el=+1;secondary=+0,+0,+0,+0,+1,+1]! !{Simplify this over-specified selector. Maximum allowed depth: 5. Actual depth: 6}! */
21 | ul:hover #class a l
22 | p a {
23 | }
24 |
25 | ul > div +li {
26 | }
27 |
28 | .button.class,.link.class,.button.class2:active,.link.class3:active {
29 | }
30 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/parsingError.css:
--------------------------------------------------------------------------------
1 | /* Noncompliant ![sl=3]! !{Parsing error.}! */
2 | .heart-icon {
3 | background: ;
4 | }
5 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/accelerator.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | accelerator: inherit;
3 | accelerator: true;
4 | accelerator: false;
5 | accelerator: abc; /* Noncompliant !{Update the invalid value of property "accelerator". Expected format: true | false}! */
6 | accelerator: 10; /* Noncompliant */
7 | accelerator: 10px; /* Noncompliant */
8 | }
9 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/align-content.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | align-content: inherit;
3 | align-content: flex-start;
4 | align-content: flex-end;
5 | align-content: center;
6 | align-content: space-between;
7 | align-content: space-around;
8 | align-content: stretch;
9 | align-content: abc; /* Noncompliant !{Update the invalid value of property "align-content". Expected format: flex-start | flex-end | center | space-between | space-around | stretch}! */
10 | align-content: 10; /* Noncompliant */
11 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/align-items.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | align-items: inherit;
3 | align-items: flex-start;
4 | align-items: flex-end;
5 | align-items: center;
6 | align-items: baseline;
7 | align-items: stretch;
8 | align-items: abc; /* Noncompliant !{Update the invalid value of property "align-items". Expected format: flex-start | flex-end | center | baseline | stretch}! */
9 | align-items: 10; /* Noncompliant */
10 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/align-self.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | align-self: inherit;
3 | align-self: auto;
4 | align-self: flex-start;
5 | align-self: flex-end;
6 | align-self: center;
7 | align-self: baseline;
8 | align-self: stretch;
9 | align-self: abc; /* Noncompliant !{Update the invalid value of property "align-self". Expected format: auto | flex-start | flex-end | center | baseline | stretch}! */
10 | align-self: 10; /* Noncompliant */
11 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/all.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | all: inherit;
3 | all: initial;
4 | all: unset;
5 | all: revert;
6 | all: abc; /* Noncompliant ![sc=3;ec=11;el=+0]! !{Update the invalid value of property "all". Expected format: inherit | initial | unset | revert}! */
7 | *all: abc; /* Noncompliant */
8 | _all: abc; /* Noncompliant */
9 | -moz-all: abc; /* Compliant: vendor-prefix properties are not checked */
10 | }
11 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/animation-delay.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | animation-delay: inherit;
3 | animation-delay: 10s;
4 | animation-delay: 0;
5 | animation-delay: -10s;
6 | animation-delay: +10ms;
7 | animation-delay: 10; /* Noncompliant !{Update the invalid value of property "animation-delay". Expected format: }! */
8 | animation-delay: 10.5; /* Noncompliant */
9 | animation-delay: abc; /* Noncompliant */
10 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/animation-direction.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | animation-direction: inherit;
3 | animation-direction: normal;
4 | animation-direction: reverse;
5 | animation-direction: alternate;
6 | animation-direction: alternate-reverse;
7 | animation-direction: 10; /* Noncompliant !{Update the invalid value of property "animation-direction". Expected format: normal | reverse | alternate | alternate-reverse}! */
8 | animation-direction: 0; /* Noncompliant */
9 | animation-direction: abc; /* Noncompliant */
10 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/animation-duration.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | animation-duration: inherit;
3 | animation-duration: 10s;
4 | animation-duration: 0;
5 | animation-duration: -10s; /* Noncompliant !{Update the invalid value of property "animation-duration". Expected format: (>=0)}! */
6 | animation-duration: +10ms;
7 | animation-duration: 10; /* Noncompliant */
8 | animation-duration: 10.5; /* Noncompliant */
9 | animation-duration: abc; /* Noncompliant */
10 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/animation-fill-mode.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | animation-fill-mode: inherit;
3 | animation-fill-mode: none;
4 | animation-fill-mode: forwards;
5 | animation-fill-mode: backwards;
6 | animation-fill-mode: both;
7 | animation-fill-mode: abc; /* Noncompliant !{Update the invalid value of property "animation-fill-mode". Expected format: none | forwards | backwards | both}! */
8 | animation-fill-mode: 10; /* Noncompliant */
9 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/animation-iteration-count.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | animation-iteration-count: inherit;
3 | animation-iteration-count: infinite;
4 | animation-iteration-count: 0;
5 | animation-iteration-count: 2.3;
6 | animation-iteration-count: +2.3;
7 | animation-iteration-count: abc; /* Noncompliant !{Update the invalid value of property "animation-iteration-count". Expected format: infinite | (>=0)}! */
8 | animation-iteration-count: -10; /* Noncompliant */
9 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/animation-name.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | animation-name: inherit;
3 | animation-name: abc;
4 | animation-name: 0; /* Noncompliant !{Update the invalid value of property "animation-name". Expected format: none | }! */
5 | animation-name: 10px; /* Noncompliant */
6 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/animation-play-state.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | animation-play-state: inherit;
3 | animation-play-state: running;
4 | animation-play-state: paused;
5 | animation-play-state: abc; /* Noncompliant !{Update the invalid value of property "animation-play-state". Expected format: running | paused}! */
6 | animation-play-state: 0; /* Noncompliant */
7 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/backface-visibility.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | backface-visibility: inherit;
3 | backface-visibility: visible;
4 | backface-visibility: hidden;
5 | backface-visibility: 10px; /* Noncompliant !{Update the invalid value of property "backface-visibility". Expected format: visible | hidden}! */
6 | backface-visibility: 10; /* Noncompliant */
7 | backface-visibility: abc; /* Noncompliant */
8 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/background-attachment.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | background-attachment: inherit;
3 | background-attachment: scroll;
4 | background-attachment: fixed;
5 | background-attachment: local;
6 | background-attachment: local, fixed;
7 | background-attachment: local, fixed, fixed;
8 | background-attachment: 10; /* Noncompliant !{Update the invalid value of property "background-attachment". Expected format: scroll | fixed | local [, scroll | fixed | local]*}! */
9 | background-attachment: 10, 10; /* Noncompliant */
10 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/background-clip.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | background-clip: inherit;
3 | background-clip: border-box;
4 | background-clip: padding-box;
5 | background-clip: content-box;
6 | background-clip: 10px; /* Noncompliant !{Update the invalid value of property "background-clip". Expected format: [, ]*}! */
7 | background-clip: 10; /* Noncompliant */
8 | background-clip: border-box, padding-box
9 |
10 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/background-origin.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | background-origin: inherit;
3 | background-origin: border-box;
4 | background-origin: padding-box;
5 | background-origin: content-box;
6 | background-origin: 10px; /* Noncompliant !{Update the invalid value of property "background-origin". Expected format: [, ]*}! */
7 | background-origin: 10; /* Noncompliant */
8 | background-origin: border-box, padding-box
9 |
10 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/background-position-x.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | background-position-x: inherit;
3 | background-position-x: 10px;
4 | background-position-x: -10px;
5 | background-position-x: 0;
6 | background-position-x: 10%;
7 | background-position-x: -10%;
8 | background-position-x: left;
9 | background-position-x: right;
10 | background-position-x: center;
11 | background-position-x: abc; /* Noncompliant !{Update the invalid value of property "background-position-x". Expected format: | | left | center | right}! */
12 | background-position-x: 10; /* Noncompliant */
13 | }
14 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/background-position-y.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | background-position-y: inherit;
3 | background-position-y: 10px;
4 | background-position-y: -10px;
5 | background-position-y: 0;
6 | background-position-y: 10%;
7 | background-position-y: -10%;
8 | background-position-y: left;
9 | background-position-y: right;
10 | background-position-y: center;
11 | background-position-y: abc; /* Noncompliant !{Update the invalid value of property "background-position-y". Expected format: | | left | center | right}! */
12 | background-position-y: 10; /* Noncompliant */
13 | }
14 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/baseline-shift.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | baseline-shift: inherit;
3 | baseline-shift: sub;
4 | baseline-shift: super;
5 | baseline-shift: 10%;
6 | baseline-shift: -10%;
7 | baseline-shift: 10px;
8 | baseline-shift: -10px;
9 | baseline-shift: abc; /* Noncompliant !{Update the invalid value of property "baseline-shift". Expected format: sub | super | | }! */
10 | baseline-shift: 10; /* Noncompliant */
11 | }
12 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/block-progression.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | block-progression: inherit;
3 | block-progression: tb;
4 | block-progression: rl;
5 | block-progression: bt;
6 | block-progression: lr;
7 | block-progression: abc; /* Noncompliant !{Update the invalid value of property "block-progression". Expected format: tb | rl | bt | lr}! */
8 | block-progression: 10; /* Noncompliant */
9 | }
10 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/border-bottom-color.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | border-bottom-color: inherit;
3 | border-bottom-color: red;
4 | border-bottom-color: rgb(25,25,25);
5 | border-bottom-color: 10px; /* Noncompliant !{Update the invalid value of property "border-bottom-color". Expected format: }! */
6 | border-bottom-color: abc; /* Noncompliant */
7 | }
8 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/border-bottom-left-radius.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | border-bottom-left-radius: inherit;
3 | border-bottom-left-radius: 10px 10px;
4 | border-bottom-left-radius: 10% 10%;
5 | border-bottom-left-radius: 10px;
6 | border-bottom-left-radius: 10%;
7 | border-bottom-left-radius: -10px; /* Noncompliant !{Update the invalid value of property "border-bottom-left-radius". Expected format: [ (>=0) | (>=0) ]{1,2}}! */
8 | border-bottom-left-radius: -10%; /* Noncompliant */
9 | border-bottom-left-radius: 10px -10px; /* Noncompliant */
10 | border-bottom-left-radius: -10px 10px; /* Noncompliant */
11 | border-bottom-left-radius: 10px 10px 10px; /* Noncompliant */
12 | border-bottom-left-radius: abc; /* Noncompliant */
13 | }
14 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/border-bottom-right-radius.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | border-bottom-right-radius: inherit;
3 | border-bottom-right-radius: 10px 10px;
4 | border-bottom-right-radius: 10% 10%;
5 | border-bottom-right-radius: 10px;
6 | border-bottom-right-radius: 10%;
7 | border-bottom-right-radius: -10px; /* Noncompliant !{Update the invalid value of property "border-bottom-right-radius". Expected format: [ (>=0) | (>=0) ]{1,2}}! */
8 | border-bottom-right-radius: -10%; /* Noncompliant */
9 | border-bottom-right-radius: 10px -10px; /* Noncompliant */
10 | border-bottom-right-radius: -10px 10px; /* Noncompliant */
11 | border-bottom-right-radius: 10px 10px 10px; /* Noncompliant */
12 | border-bottom-right-radius: abc; /* Noncompliant */
13 | }
14 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/border-bottom-style.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | border-bottom-style: inherit;
3 | border-bottom-style: none;
4 | border-bottom-style: hidden;
5 | border-bottom-style: dashed;
6 | border-bottom-style: double;
7 | border-bottom-style: groove;
8 | border-bottom-style: ridge;
9 | border-bottom-style: inset;
10 | border-bottom-style: outset;
11 | border-bottom-style: 10px; /* Noncompliant !{Update the invalid value of property "border-bottom-style". Expected format: none | hidden | dotted | dashed | solid | double | groove | ridge | inset | outset}! */
12 | border-bottom-style: abc; /* Noncompliant */
13 | }
14 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/border-bottom-width.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | border-bottom-width: inherit;
3 | border-bottom-width: thin;
4 | border-bottom-width: medium;
5 | border-bottom-width: thick;
6 | border-bottom-width: 10px;
7 | border-bottom-width: -10px; /* Noncompliant !{Update the invalid value of property "border-bottom-width". Expected format: thin | medium | thick | (>=0)}! */
8 | border-bottom-width: abc; /* Noncompliant */
9 | }
10 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/border-collapse.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | border-collapse: inherit;
3 | border-collapse: collapse;
4 | border-collapse: separate;
5 | border-collapse: abc; /* Noncompliant !{Update the invalid value of property "border-collapse". Expected format: collapse | separate}! */
6 | border-collapse: 10; /* Noncompliant */
7 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/border-color.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | border-color: inherit;
3 | border-color: red;
4 | border-color: red blue;
5 | border-color: red blue green;
6 | border-color: red blue green white;
7 | border-color: red blue green white black; /* Noncompliant !{Update the invalid value of property "border-color". Expected format: {1,4}}! */
8 | border-color: #f03;
9 | border-color: #f03 #f03;
10 | border-color: #f03 #f03 #f03;
11 | border-color: #f03 #f03 #f03 #f03;
12 | border-color: #f03 #f03 #f03 #f03 #f03; /* Noncompliant */
13 | border-color: transparent #f03 #f03 transparent;
14 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/border-left-color.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | border-left-color: inherit;
3 | border-left-color: red;
4 | border-left-color: rgb(25,25,25);
5 | border-left-color: 10px; /* Noncompliant !{Update the invalid value of property "border-left-color". Expected format: }! */
6 | border-left-color: abc; /* Noncompliant */
7 | }
8 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/border-left-style.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | border-left-style: inherit;
3 | border-left-style: none;
4 | border-left-style: hidden;
5 | border-left-style: dashed;
6 | border-left-style: double;
7 | border-left-style: groove;
8 | border-left-style: ridge;
9 | border-left-style: inset;
10 | border-left-style: outset;
11 | border-left-style: 10px; /* Noncompliant !{Update the invalid value of property "border-left-style". Expected format: none | hidden | dotted | dashed | solid | double | groove | ridge | inset | outset}! */
12 | border-left-style: abc; /* Noncompliant */
13 | }
14 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/border-left-width.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | border-left-width: inherit;
3 | border-left-width: thin;
4 | border-left-width: medium;
5 | border-left-width: thick;
6 | border-left-width: 10px;
7 | border-left-width: -10px; /* Noncompliant !{Update the invalid value of property "border-left-width". Expected format: thin | medium | thick | (>=0)}! */
8 | border-left-width: abc; /* Noncompliant */
9 | }
10 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/border-left.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | border-left: inherit;
3 | border-left: dotted;
4 | border-left: dotted thin;
5 | border-left: dotted thin green;
6 | border-left: thin green;
7 | border-left: 10px green;
8 | border-left: rgb(25,25,25) 10px;
9 | border-left: dotted thin green green; /* Noncompliant !{Update the invalid value of property "border-left". Expected format: || || }! */
10 | border-left: dotted abc green; /* Noncompliant */
11 | border-left: dotted -10px green; /* Noncompliant */
12 | }
13 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/border-right-color.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | border-right-color: inherit;
3 | border-right-color: red;
4 | border-right-color: rgb(25,25,25);
5 | border-right-color: 10px; /* Noncompliant !{Update the invalid value of property "border-right-color". Expected format: }! */
6 | border-right-color: abc; /* Noncompliant */
7 | }
8 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/border-right-style.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | border-right-style: inherit;
3 | border-right-style: none;
4 | border-right-style: hidden;
5 | border-right-style: dashed;
6 | border-right-style: double;
7 | border-right-style: groove;
8 | border-right-style: ridge;
9 | border-right-style: inset;
10 | border-right-style: outset;
11 | border-right-style: 10px; /* Noncompliant !{Update the invalid value of property "border-right-style". Expected format: none | hidden | dotted | dashed | solid | double | groove | ridge | inset | outset}! */
12 | border-right-style: abc; /* Noncompliant */
13 | }
14 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/border-right-width.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | border-right-width: inherit;
3 | border-right-width: thin;
4 | border-right-width: medium;
5 | border-right-width: thick;
6 | border-right-width: 10px;
7 | border-right-width: -10px; /* Noncompliant !{Update the invalid value of property "border-right-width". Expected format: thin | medium | thick | (>=0)}! */
8 | border-right-width: abc; /* Noncompliant */
9 | }
10 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/border-right.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | border-right: inherit;
3 | border-right: dotted;
4 | border-right: dotted thin;
5 | border-right: dotted thin green;
6 | border-right: thin green;
7 | border-right: 10px green;
8 | border-right: rgb(25,25,25) 10px;
9 | border-right: dotted thin green green; /* Noncompliant !{Update the invalid value of property "border-right". Expected format: || || }! */
10 | border-right: dotted abc green; /* Noncompliant */
11 | border-right: dotted -10px green; /* Noncompliant */
12 | }
13 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/border-spacing.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | border-spacing: inherit;
3 | border-spacing: 10px;
4 | border-spacing: 10pt 10pt;
5 | border-spacing: -10px; /* Noncompliant !{Update the invalid value of property "border-spacing". Expected format: (>=0) (>=0)?}! */
6 | border-spacing: 10pt -10pt; /* Noncompliant */
7 | border-spacing: 10pt 10pt 10pt; /* Noncompliant */
8 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/border-style.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | border-style: inherit;
3 | border-style: dotted;
4 | border-style: dotted dotted;
5 | border-style: dotted dotted dotted;
6 | border-style: dotted dotted dotted dotted;
7 | border-style: dotted dotted dotted dotted dotted; /* Noncompliant */
8 | border-style: dashed solid double dotted;
9 | border-style: 10; /* Noncompliant !{Update the invalid value of property "border-style". Expected format: [ none | hidden | dotted | dashed | solid | double | groove | ridge | inset | outset ]{1,4}}! */
10 | border-style: 10px; /* Noncompliant */
11 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/border-top-color.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | border-top-color: inherit;
3 | border-top-color: red;
4 | border-top-color: rgb(25,25,25);
5 | border-top-color: 10px; /* Noncompliant !{Update the invalid value of property "border-top-color". Expected format: }! */
6 | border-top-color: abc; /* Noncompliant */
7 | }
8 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/border-top-left-radius.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | border-top-left-radius: inherit;
3 | border-top-left-radius: 10px 10px;
4 | border-top-left-radius: 10% 10%;
5 | border-top-left-radius: 10px;
6 | border-top-left-radius: 10%;
7 | border-top-left-radius: -10px; /* Noncompliant !{Update the invalid value of property "border-top-left-radius". Expected format: [ (>=0) | (>=0) ]{1,2}}! */
8 | border-top-left-radius: -10%; /* Noncompliant */
9 | border-top-left-radius: 10px -10px; /* Noncompliant */
10 | border-top-left-radius: -10px 10px; /* Noncompliant */
11 | border-top-left-radius: 10px 10px 10px; /* Noncompliant */
12 | border-top-left-radius: abc; /* Noncompliant */
13 | }
14 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/border-top-right-radius.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | border-top-right-radius: inherit;
3 | border-top-right-radius: 10px 10px;
4 | border-top-right-radius: 10% 10%;
5 | border-top-right-radius: 10px;
6 | border-top-right-radius: 10%;
7 | border-top-right-radius: -10px; /* Noncompliant !{Update the invalid value of property "border-top-right-radius". Expected format: [ (>=0) | (>=0) ]{1,2}}! */
8 | border-top-right-radius: -10%; /* Noncompliant */
9 | border-top-right-radius: 10px -10px; /* Noncompliant */
10 | border-top-right-radius: -10px 10px; /* Noncompliant */
11 | border-top-right-radius: 10px 10px 10px; /* Noncompliant */
12 | border-top-right-radius: abc; /* Noncompliant */
13 | }
14 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/border-top-style.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | border-top-style: inherit;
3 | border-top-style: none;
4 | border-top-style: hidden;
5 | border-top-style: dashed;
6 | border-top-style: double;
7 | border-top-style: groove;
8 | border-top-style: ridge;
9 | border-top-style: inset;
10 | border-top-style: outset;
11 | border-top-style: 10px; /* Noncompliant !{Update the invalid value of property "border-top-style". Expected format: none | hidden | dotted | dashed | solid | double | groove | ridge | inset | outset}! */
12 | border-top-style: abc; /* Noncompliant */
13 | }
14 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/border-top-width.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | border-top-width: inherit;
3 | border-top-width: thin;
4 | border-top-width: medium;
5 | border-top-width: thick;
6 | border-top-width: 10px;
7 | border-top-width: -10px; /* Noncompliant !{Update the invalid value of property "border-top-width". Expected format: thin | medium | thick | (>=0)}! */
8 | border-top-width: abc; /* Noncompliant */
9 | }
10 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/border-top.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | border-top: inherit;
3 | border-top: dotted;
4 | border-top: dotted thin;
5 | border-top: dotted thin green;
6 | border-top: thin green;
7 | border-top: 10px green;
8 | border-top: rgb(25,25,25) 10px;
9 | border-top: dotted thin green green; /* Noncompliant !{Update the invalid value of property "border-top". Expected format: || || }! */
10 | border-top: dotted abc green; /* Noncompliant */
11 | border-top: dotted -10px green; /* Noncompliant */
12 | }
13 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/border-width.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | border-width: inherit;
3 | border-width: thin;
4 | border-width: thin thin;
5 | border-width: thin thin thin;
6 | border-width: thin thin thin thin;
7 | border-width: thin thin thin thin thin; /* Noncompliant !{Update the invalid value of property "border-width". Expected format: [ thin | medium | thick | (>=0) ]{1,4}}! */
8 | border-width: 10px;
9 | border-width: -10px; /* Noncompliant */
10 | border-width: 10px 10px 10px;
11 | border-width: 10px -10px 10px; /* Noncompliant */
12 | border-width: abc; /* Noncompliant */
13 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/border.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | border: inherit;
3 | border: dotted;
4 | border: dotted thin;
5 | border: dotted thin green;
6 | border: thin green;
7 | border: 10px green;
8 | border: rgb(25,25,25) 10px;
9 | border: dotted abc green; /* Noncompliant !{Update the invalid value of property "border". Expected format: {1,4} || {1,4} || }! */
10 | border: dotted -10px green; /* Noncompliant */
11 | border: 2px groove threedface;
12 | border: 2px 2px groove threedface;
13 | border: 2px 2px 2px 2px 2px groove groove groove groove green; /* Noncompliant */
14 | }
15 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/bottom.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | bottom: inherit;
3 | bottom: auto;
4 | bottom: 10px;
5 | bottom: -10px;
6 | bottom: 10%;
7 | bottom: -10%;
8 | bottom: abc; /* Noncompliant !{Update the invalid value of property "bottom". Expected format: auto | | }! */
9 | bottom: 12; /* Noncompliant */
10 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/box-decoration-break.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | box-decoration-break: inherit;
3 | box-decoration-break: clone;
4 | box-decoration-break: slice;
5 | box-decoration-break: abc; /* Noncompliant !{Update the invalid value of property "box-decoration-break". Expected format: slice | clone}!*/
6 | box-decoration-break: 10; /* Noncompliant */
7 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/box-sizing.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | box-sizing: inherit;
3 | box-sizing: content-box;
4 | box-sizing: padding-box;
5 | box-sizing: border-box;
6 | box-sizing: abc; /* Noncompliant !{Update the invalid value of property "box-sizing". Expected format: }!*/
7 | box-sizing: 10%; /* Noncompliant */
8 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/box-snap.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | box-snap: inherit;
3 | box-snap: none;
4 | box-snap: block-start;
5 | box-snap: block-end;
6 | box-snap: center;
7 | box-snap: baseline;
8 | box-snap: last-baseline;
9 | box-snap: abc; /* Noncompliant !{Update the invalid value of property "box-snap". Expected format: none | block-start | block-end | center | baseline | last-baseline}! */
10 | box-snap: 10; /* Noncompliant */
11 | box-snap: 10px; /* Noncompliant */
12 | }
13 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/box-suppress.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | box-suppress: inherit;
3 | box-suppress: show;
4 | box-suppress: discard;
5 | box-suppress: hide;
6 | box-suppress: none; /* Noncompliant !{Update the invalid value of property "box-suppress". Expected format: show | discard | hide}!
7 | box-suppress: 0; /* Noncompliant */
8 | box-suppress: 0px; /* Noncompliant */
9 | }
10 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/break-after.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | break-after: inherit;
3 | break-after: auto;
4 | break-after: always;
5 | break-after: avoid;
6 | break-after: left;
7 | break-after: right;
8 | break-after: page;
9 | break-after: column;
10 | break-after: region;
11 | break-after: avoid-page;
12 | break-after: avoid-region;
13 | break-after: avoid-column;
14 | break-after: recto;
15 | break-after: verso;
16 | break-after: 10; /* Noncompliant !{Update the invalid value of property "break-after". Expected format: auto | avoid | avoid-page | page | left | right | recto | verso | avoid-column | column | avoid-region | region | always}! */
17 | break-after: none; /* Noncompliant */
18 | break-after: 10px; /* Noncompliant */
19 | }
20 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/break-before.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | break-before: inherit;
3 | break-before: auto;
4 | break-before: always;
5 | break-before: avoid;
6 | break-before: left;
7 | break-before: right;
8 | break-before: page;
9 | break-before: column;
10 | break-before: region;
11 | break-before: avoid-page;
12 | break-before: avoid-region;
13 | break-before: avoid-column;
14 | break-before: recto;
15 | break-before: verso;
16 | break-before: 10; /* Noncompliant !{Update the invalid value of property "break-before". Expected format: auto | avoid | avoid-page | page | left | right | recto | verso | avoid-column | column | avoid-region | region | always}! */
17 | break-before: none; /* Noncompliant */
18 | break-before: 10px; /* Noncompliant */
19 | }
20 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/break-inside.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | break-inside: inherit;
3 | break-inside: auto;
4 | break-inside: avoid;
5 | break-inside: avoid-page;
6 | break-inside: avoid-region;
7 | break-inside: avoid-column;
8 | break-inside: 10; /* Noncompliant !{Update the invalid value of property "break-inside". Expected format: auto | avoid | avoid-page | avoid-column | avoid-region}! */
9 | break-inside: none; /* Noncompliant */
10 | break-inside: 10px; /* Noncompliant */
11 | }
12 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/caption-side.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | caption-side: inherit;
3 | caption-side: top;
4 | caption-side: bottom;
5 | caption-side: block-start;
6 | caption-side: inline-start;
7 | caption-side: block-end;
8 | caption-side: inline-end;
9 | caption-side: 10; /* Noncompliant !{Update the invalid value of property "caption-side". Expected format: top | bottom | block-start | block-end | inline-start | inline-end}! */
10 | caption-side: 10%; /* Noncompliant */
11 | caption-side: abc; /* Noncompliant */
12 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/caret-color.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | caret-color: inherit;
3 | caret-color: red;
4 | caret-color: darkgrey;
5 | caret-color: #f03;
6 | caret-color: #F03;
7 | caret-color: #ff0033;
8 | caret-color: #FF0033;
9 | caret-color: #GF0033; /* Noncompliant !{Update the invalid value of property "caret-color". Expected format: auto | }! */
10 | caret-color: #FF04033; /* Noncompliant */
11 | caret-color: abc; /* Noncompliant */
12 | caret-color: rgb(255, 0,51);
13 | caret-color: rgba(255, 0,51,0.5);
14 | caret-color: hsl(0,100%,15%);
15 | caret-color: hsla(0,100%,15%,0.5);
16 | caret-color: hello(); /* Noncompliant */
17 | caret-color: auto;
18 | }
19 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/caret-shape.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | caret-shape: inherit;
3 | caret-shape: auto;
4 | caret-shape: bar;
5 | caret-shape: block;
6 | caret-shape: underscore;
7 | caret-shape: abc; /* Noncompliant !{Update the invalid value of property "caret-shape". Expected format: auto | bar | block | underscore}! */
8 | caret-shape: hello(); /* Noncompliant */
9 | caret-shape: 10px; /* Noncompliant */
10 | }
11 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/clear.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | clear: inherit;
3 | clear: none;
4 | clear: left;
5 | clear: right;
6 | clear: both;
7 | clear: abc; /* Noncompliant !{Update the invalid value of property "clear". Expected format: none | left | right | both}! */
8 | clear: 10; /* Noncompliant */
9 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/clip-path.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | clip-path: inherit;
3 | clip-path: none;
4 | clip-path: url("abc");
5 | clip-path: inset();
6 | clip-path: circle();
7 | clip-path: ellipse();
8 | clip-path: polygon();
9 | clip-path: content-box;
10 | clip-path: padding-box;
11 | clip-path: border-box;
12 | clip-path: margin-box;
13 | clip-path: url; /* Noncompliant !{Update the invalid value of property "clip-path". Expected format: none | | | (circle | ellipse | inset | polygon)}! */
14 | clip-path: 10%; /* Noncompliant */
15 | clip-path: 10px; /* Noncompliant */
16 | clip-path: abc(); /* Noncompliant */
17 | }
18 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/clip-rule.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | clip-rule: inherit;
3 | clip-rule: nonzero;
4 | clip-rule: evenodd;
5 | clip-rule: blabla; /* Noncompliant !{Update the invalid value of property "clip-rule". Expected format: nonzero | evenodd}! */
6 | clip-rule: 10px; /* Noncompliant */
7 | }
8 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/clip.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | clip: inherit;
3 | clip: rect(10px,10px,10px,10px);
4 | clip: auto;
5 | clip: abc; /* Noncompliant !{Update the invalid value of property "clip". Expected format: (rect) | auto}!*/
6 | clip: 10px; /* Noncompliant */
7 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/color-interpolation-filters.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | color-interpolation-filters: inherit;
3 | color-interpolation-filters: auto;
4 | color-interpolation-filters: sRGB;
5 | color-interpolation-filters: linearRGB;
6 | color-interpolation-filters: srgb;
7 | color-interpolation-filters: linearrgb;
8 | color-interpolation-filters: blabla; /* Noncompliant !{Update the invalid value of property "color-interpolation-filters". Expected format: auto | srgb | linearrgb}! */
9 | color-interpolation-filters: 10px; /* Noncompliant */
10 | }
11 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/color-interpolation.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | color-interpolation: inherit;
3 | color-interpolation: auto;
4 | color-interpolation: sRGB;
5 | color-interpolation: linearRGB;
6 | color-interpolation: srgb;
7 | color-interpolation: linearrgb;
8 | color-interpolation: blabla; /* Noncompliant !{Update the invalid value of property "color-interpolation". Expected format: auto | srgb | linearrgb}! */
9 | color-interpolation: 10px; /* Noncompliant */
10 | }
11 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/color-rendering.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | color-rendering: inherit;
3 | color-rendering: auto;
4 | color-rendering: optimizeSpeed;
5 | color-rendering: optimizeQuality;
6 | color-rendering: optimizespeed;
7 | color-rendering: optimizequality;
8 | color-rendering: blabla; /* Noncompliant !{Update the invalid value of property "color-rendering". Expected format: auto | optimizespeed | optimizequality}! */
9 | color-rendering: 10px; /* Noncompliant */
10 | }
11 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/color.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | color: inherit;
3 | color: red;
4 | color: darkgrey;
5 | color: #f03;
6 | color: #F03;
7 | color: #ff0033;
8 | color: #FF0033;
9 | color: #GF0033; /* Noncompliant !{Update the invalid value of property "color". Expected format: }!*/
10 | color: #FF04033; /* Noncompliant */
11 | color: abc; /* Noncompliant */
12 | color: rgb(255, 0,51);
13 | color: rgba(255, 0,51,0.5);
14 | color: hsl(0,100%,15%);
15 | color: hsla(0,100%,15%,0.5);
16 | color: hello(); /* Noncompliant */
17 | color: transparent;
18 | color: currentColor;
19 | color: currentcolor;
20 | color: Background;
21 | color: background;
22 | color: ThreeDShadow;
23 | color: threedshadow;
24 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/column-count.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | column-count: inherit;
3 | column-count: 0;
4 | column-count: 10;
5 | column-count: 10.3; /* Noncompliant !{Update the invalid value of property "column-count". Expected format: (>=0)}! */
6 | column-count: none; /* Noncompliant */
7 | column-count: -10; /* Noncompliant */
8 | }
9 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/column-fill.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | column-fill: inherit;
3 | column-fill: auto;
4 | column-fill: balance;
5 | column-fill: balance-all;
6 | column-fill: 10; /* Noncompliant !{Update the invalid value of property "column-fill". Expected format: auto | balance | balance-all}! */
7 | column-fill: none; /* Noncompliant */
8 | column-fill: 10px; /* Noncompliant */
9 | }
10 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/column-gap.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | column-gap: inherit;
3 | column-gap: normal;
4 | column-gap: 10px;
5 | column-gap: 0;
6 | column-gap: 10; /* Noncompliant !{Update the invalid value of property "column-gap". Expected format: normal | (>=0)}! */
7 | column-gap: none; /* Noncompliant */
8 | column-gap: -10px; /* Noncompliant */
9 | }
10 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/column-rule-style.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | column-rule-style: inherit;
3 | column-rule-style: none;
4 | column-rule-style: hidden;
5 | column-rule-style: dashed;
6 | column-rule-style: double;
7 | column-rule-style: groove;
8 | column-rule-style: ridge;
9 | column-rule-style: inset;
10 | column-rule-style: outset;
11 | column-rule-style: 10px; /* Noncompliant !{Update the invalid value of property "column-rule-style". Expected format: none | hidden | dotted | dashed | solid | double | groove | ridge | inset | outset}! */
12 | column-rule-style: abc; /* Noncompliant */
13 | }
14 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/column-rule-width.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | column-rule-width: inherit;
3 | column-rule-width: thin;
4 | column-rule-width: medium;
5 | column-rule-width: thick;
6 | column-rule-width: 10px;
7 | column-rule-width: -10px; /* Noncompliant !{Update the invalid value of property "column-rule-width". Expected format: thin | medium | thick | (>=0)}! */
8 | column-rule-width: abc; /* Noncompliant */
9 | }
10 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/column-span.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | column-span: inherit;
3 | column-span: all;
4 | column-span: none;
5 | column-span: 10; /* Noncompliant !{Update the invalid value of property "column-span". Expected format: all | none}! */
6 | column-span: auto; /* Noncompliant */
7 | column-span: 10px; /* Noncompliant */
8 | }
9 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/column-width.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | column-width: inherit;
3 | column-width: auto;
4 | column-width: fill;
5 | column-width: min-content;
6 | column-width: max-content;
7 | column-width: fit-content;
8 | column-width: fit-content(10%);
9 | column-width: 10px;
10 | column-width: 10; /* Noncompliant !{Update the invalid value of property "column-width". Expected format: auto | (>=0) | fill | max-content | min-content | fit-content | (fit-content)}! */
11 | column-width: none; /* Noncompliant */
12 | column-width: -10px; /* Noncompliant */
13 | }
14 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/content-zoom-chaining.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | content-zoom-chaining: inherit;
3 | content-zoom-chaining: none;
4 | content-zoom-chaining: chained;
5 | content-zoom-chaining: abc; /* Noncompliant !{Update the invalid value of property "content-zoom-chaining". Expected format: none | chained}! */
6 | content-zoom-chaining: 10; /* Noncompliant */
7 | }
8 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/content-zoom-limit-max.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | content-zoom-limit-max: inherit;
3 | content-zoom-limit-max: 10%;
4 | content-zoom-limit-max: -10%;
5 | content-zoom-limit-max: abc; /* Noncompliant !{Update the invalid value of property "content-zoom-limit-max". Expected format: }! */
6 | content-zoom-limit-max: 10% 10%; /* Noncompliant */
7 | }
8 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/content-zoom-limit-min.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | content-zoom-limit-min: inherit;
3 | content-zoom-limit-min: 10%;
4 | content-zoom-limit-min: -10%;
5 | content-zoom-limit-min: abc; /* Noncompliant !{Update the invalid value of property "content-zoom-limit-min". Expected format: }! */
6 | content-zoom-limit-min: 10% 10%; /* Noncompliant */
7 | }
8 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/content-zoom-limit.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | content-zoom-limit: inherit;
3 | content-zoom-limit: 10%;
4 | content-zoom-limit: 10% 10%;
5 | content-zoom-limit: -10% -10%;
6 | content-zoom-limit: abc; /* Noncompliant !{Update the invalid value of property "content-zoom-limit". Expected format: {1,2}}! */
7 | content-zoom-limit: 10% 10% 10%; /* Noncompliant */
8 | content-zoom-limit: 10% 10; /* Noncompliant */
9 | }
10 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/content-zoom-snap-points.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | content-zoom-snap-points: inherit;
3 | content-zoom-snap-points: snapInterval(10%, 10%);
4 | content-zoom-snap-points: snapinterval(10%, 10%);
5 | content-zoom-snap-points: snapList(10%);
6 | content-zoom-snap-points: snaplist(10%);
7 | content-zoom-snap-points: abc; /* Noncompliant !{Update the invalid value of property "content-zoom-snap-points". Expected format: (snapinterval | snaplist)}! */
8 | content-zoom-snap-points: 10%; /* Noncompliant */
9 | }
10 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/content-zoom-snap-type.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | content-zoom-snap-type: inherit;
3 | content-zoom-snap-type: none;
4 | content-zoom-snap-type: proximity;
5 | content-zoom-snap-type: mandatory;
6 | content-zoom-snap-type: abc; /* Noncompliant !{Update the invalid value of property "content-zoom-snap-type". Expected format: none | proximity | mandatory}! */
7 | content-zoom-snap-type: 10%; /* Noncompliant */
8 | }
9 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/content-zooming.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | content-zooming: inherit;
3 | content-zooming: none;
4 | content-zooming: zoom;
5 | content-zooming: abc; /* Noncompliant !{Update the invalid value of property "content-zooming". Expected format: none | zoom}! */
6 | content-zooming: 10; /* Noncompliant */
7 | }
8 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/counter-increment.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | counter-increment: inherit;
3 | counter-increment: none;
4 | counter-increment: abc;
5 | counter-increment: abc 2;
6 | counter-increment: abc -2;
7 | counter-increment: abc 2 def;
8 | counter-increment: abc 2 def 2;
9 | counter-increment: abc def ghi;
10 | counter-increment: none none; /* Noncompliant !{Update the invalid value of property "counter-increment". Expected format: [ ? ]+ | none}! */
11 | counter-increment: none 2; /* Noncompliant */
12 | counter-increment: 2; /* Noncompliant */
13 | counter-increment: abc 2 2 abc; /* Noncompliant */
14 | }
15 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/counter-reset.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | counter-reset: inherit;
3 | counter-reset: none;
4 | counter-reset: abc;
5 | counter-reset: abc 2;
6 | counter-reset: abc -2;
7 | counter-reset: abc 2 def;
8 | counter-reset: abc 2 def 2;
9 | counter-reset: abc def ghi;
10 | counter-reset: none none; /* Noncompliant !{Update the invalid value of property "counter-reset". Expected format: [ ? ]+ | none}! */
11 | counter-reset: none 2; /* Noncompliant */
12 | counter-reset: 2; /* Noncompliant */
13 | counter-reset: abc 2 2 abc; /* Noncompliant */
14 | }
15 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/cue-after.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | cue-after: inherit;
3 | cue-after: none;
4 | cue-after: url(http://mybox.com);
5 | cue-after: abc; /* Noncompliant !{Update the invalid value of property "cue-after". Expected format: | none}! */
6 | cue-after: 10px; /* Noncompliant */
7 | }
8 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/cue-before.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | cue-before: inherit;
3 | cue-before: none;
4 | cue-before: url(http://mybox.com);
5 | cue-before: abc; /* Noncompliant !{Update the invalid value of property "cue-before". Expected format: | none}! */
6 | cue-before: 10px; /* Noncompliant */
7 | }
8 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/cue.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | cue: inherit;
3 | cue: none;
4 | cue: url(http://mybox.com);
5 | cue: abc; /* Noncompliant !{Update the invalid value of property "cue". Expected format: ?}! */
6 | cue: 10px; /* Noncompliant */
7 | cue: url(http://mybox.com) url(http://mybox.com);
8 | cue: url(http://mybox.com) url(http://mybox.com) url(http://mybox.com); /* Noncompliant */
9 | cue: none url(http://mybox.com);
10 | cue: none none;
11 | cue: none abc; /* Noncompliant */
12 | }
13 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/device-pixel-ratio.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | device-pixel-ratio: inherit;
3 | device-pixel-ratio: 0;
4 | device-pixel-ratio: 2;
5 | device-pixel-ratio: -2;
6 | device-pixel-ratio: 2.5;
7 | device-pixel-ratio: 2px; /* Noncompliant !{Update the invalid value of property "device-pixel-ratio". Expected format: }! */
8 | device-pixel-ratio: abc; /* Noncompliant */
9 | }
10 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/direction.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | direction: inherit;
3 | direction: rtl;
4 | direction: ltr;
5 | direction: abc; /* Noncompliant !{Update the invalid value of property "direction". Expected format: ltr | rtl}! */
6 | direction: 0.5; /* Noncompliant */
7 | }
8 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/dominant-baseline.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | dominant-baseline: inherit;
3 | dominant-baseline: auto;
4 | dominant-baseline: text-bottom ;
5 | dominant-baseline: alphabetic;
6 | dominant-baseline: ideographic;
7 | dominant-baseline: middle;
8 | dominant-baseline: central;
9 | dominant-baseline: mathematical;
10 | dominant-baseline: hanging;
11 | dominant-baseline: text-top;
12 | dominant-baseline: 10; /* Noncompliant !{Update the invalid value of property "dominant-baseline". Expected format: auto | text-bottom | alphabetic | ideographic | middle | central | mathematical | hanging | text-top}! */
13 | dominant-baseline: 10px; /* Noncompliant */
14 | dominant-baseline: abc; /* Noncompliant */
15 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/empty-cells.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | empty-cells: inherit;
3 | empty-cells: show;
4 | empty-cells: hide;
5 | empty-cells: abc; /* Noncompliant !{Update the invalid value of property "empty-cells". Expected format: show | hide}! */
6 | empty-cells: 10; /* Noncompliant */
7 | }
8 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/fallback.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | fallback: inherit;
3 | fallback: abc;
4 | fallback: def;
5 | fallback: 10px; /* Noncompliant !{Update the invalid value of property "fallback". Expected format: }! */
6 | fallback: 10; /* Noncompliant */
7 | fallback: 10px; /* Noncompliant */
8 | fallback: '10'; /* Noncompliant */
9 | fallback: abc abc; /* Noncompliant */
10 | }
11 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/fill-opacity.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | fill-opacity: 0;
3 | fill-opacity: 0.1;
4 | fill-opacity: +0.1;
5 | fill-opacity: 1.0;
6 | fill-opacity: +1.0;
7 | fill-opacity: -0.5; /* Noncompliant !{Update the invalid value of property "fill-opacity". Expected format: (0.0,1.0)}! */
8 | fill-opacity: +1.5; /* Noncompliant */
9 | fill-opacity: 1.5; /* Noncompliant */
10 | fill-opacity: inherit;
11 | }
12 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/fill-rule.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | fill-rule: inherit;
3 | fill-rule: nonzero;
4 | fill-rule: evenodd;
5 | fill-rule: blabla; /* Noncompliant !{Update the invalid value of property "fill-rule". Expected format: nonzero | evenodd}! */
6 | fill-rule: 10px; /* Noncompliant */
7 | }
8 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/flex-basis.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | flex-basis: inherit;
3 | flex-basis: auto;
4 | flex-basis: content;
5 | flex-basis: 10px;
6 | flex-basis: 0;
7 | flex-basis: -10px;
8 | flex-basis: -10%;
9 | flex-basis: -10.5; /* Noncompliant !{Update the invalid value of property "flex-basis". Expected format: content | }! */
10 | flex-basis: abc; /* Noncompliant */
11 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/flex-direction.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | flex-direction: inherit;
3 | flex-direction: row;
4 | flex-direction: row-reverse;
5 | flex-direction: column;
6 | flex-direction: column-reverse;
7 | flex-direction: abc; /* Noncompliant !{Update the invalid value of property "flex-direction". Expected format: row | row-reverse | column | column-reverse}! */
8 | flex-direction: 10; /* Noncompliant */
9 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/flex-flow.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | flex-flow: inherit;
3 | flex-flow: nowrap;
4 | flex-flow: wrap;
5 | flex-flow: wrap-reverse;
6 | flex-flow: row;
7 | flex-flow: row-reverse;
8 | flex-flow: column;
9 | flex-flow: column-reverse;
10 | flex-flow: column-reverse nowrap;
11 | flex-flow: nowrap column-reverse;
12 | flex-flow: nowrap column-reverse nowrap; /* Noncompliant !{Update the invalid value of property "flex-flow". Expected format: || }! */
13 | flex-flow: abc; /* Noncompliant */
14 | flex-flow: 10; /* Noncompliant */
15 | flex-flow: nowrap nowrap; /* Noncompliant */
16 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/flex-grow.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | flex-grow: inherit;
3 | flex-grow: 10;
4 | flex-grow: 10.5;
5 | flex-grow: 0;
6 | flex-grow: abc; /* Noncompliant !{Update the invalid value of property "flex-grow". Expected format: (>=0)}! */
7 | flex-grow: -10; /* Noncompliant */
8 | flex-grow: -10.5; /* Noncompliant */
9 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/flex-shrink.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | flex-shrink: inherit;
3 | flex-shrink: 10;
4 | flex-shrink: 10.5;
5 | flex-shrink: 0;
6 | flex-shrink: abc; /* Noncompliant !{Update the invalid value of property "flex-shrink". Expected format: (>=0)}! */
7 | flex-shrink: -10; /* Noncompliant */
8 | flex-shrink: -10.5; /* Noncompliant */
9 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/flex-wrap.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | flex-wrap: inherit;
3 | flex-wrap: nowrap;
4 | flex-wrap: wrap;
5 | flex-wrap: wrap-reverse;
6 | flex-wrap: abc; /* Noncompliant !{Update the invalid value of property "flex-wrap". Expected format: nowrap | wrap | wrap-reverse}! */
7 | flex-wrap: 10; /* Noncompliant */
8 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/float-defer.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | float-defer: inherit;
3 | float-defer: last;
4 | float-defer: none;
5 | float-defer: 10;
6 | float-defer: 0;
7 | float-defer: -10;
8 | float-defer: abc; /* Noncompliant !{Update the invalid value of property "float-defer". Expected format: | last | none}! */
9 | float-defer: 10px; /* Noncompliant */
10 | }
11 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/float-offset.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | float-offset: inherit;
3 | float-offset: 10px;
4 | float-offset: -10px;
5 | float-offset: 10%;
6 | float-offset: -10%;
7 | float-offset: 0;
8 | float-offset: abc; /* Noncompliant !{Update the invalid value of property "float-offset". Expected format: | }! */
9 | float-offset: 10; /* Noncompliant */
10 | }
11 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/float-reference.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | float-reference: inherit;
3 | float-reference: inline;
4 | float-reference: column;
5 | float-reference: region;
6 | float-reference: page;
7 | float-reference: abc; /* Noncompliant !{Update the invalid value of property "float-reference". Expected format: inline | column | region | page}! */
8 | float-reference: 10; /* Noncompliant */
9 | }
10 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/float.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | float: inherit;
3 | float: none;
4 | float: left;
5 | float: right;
6 | float: abc; /* Noncompliant !{Update the invalid value of property "float". Expected format: left | right | none}! */
7 | float: 10px; /* Noncompliant */
8 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/flood-opacity.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | flood-opacity: 0;
3 | flood-opacity: 0.1;
4 | flood-opacity: +0.1;
5 | flood-opacity: 1.0;
6 | flood-opacity: +1.0;
7 | flood-opacity: -0.5; /* Noncompliant !{Update the invalid value of property "flood-opacity". Expected format: (0.0,1.0)}! */
8 | flood-opacity: +1.5; /* Noncompliant */
9 | flood-opacity: 1.5; /* Noncompliant */
10 | flood-opacity: inherit;
11 | }
12 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/font-family.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | font-family: inherit;
3 | font-family: serif;
4 | font-family: sans-serif;
5 | font-family: "Arial";
6 | font-family: Helvetica;
7 | font-family: 0; /* Noncompliant {Update the invalid value of property "font-family". Expected format: [ | ] [, | ]*}! */
8 | font-family: 10%; /* Noncompliant */
9 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/font-language-override.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | font-language-override: inherit;
3 | font-language-override: normal;
4 | font-language-override: "abc";
5 | font-language-override: 'abc';
6 | font-language-override: 10%; /* Noncompliant !{Update the invalid value of property "font-language-override". Expected format: normal | }! */
7 | font-language-override: none; /* Noncompliant */
8 | font-language-override: 10; /* Noncompliant */
9 | }
10 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/font-size-adjust.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | font-size-adjust: inherit;
3 | font-size-adjust: none;
4 | font-size-adjust: 0.5;
5 | font-size-adjust: -0.5;
6 | font-size-adjust: 10px; /* Noncompliant !{Update the invalid value of property "font-size-adjust". Expected format: none | }! */
7 | font-size-adjust: abc; /* Noncompliant */
8 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/font-size.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | font-size: inherit;
3 | font-size: xx-small;
4 | font-size: x-small;
5 | font-size: small;
6 | font-size: medium;
7 | font-size: large;
8 | font-size: x-large;
9 | font-size: xx-large;
10 | font-size: larger;
11 | font-size: smaller;
12 | font-size: 10px;
13 | font-size: 1.5em;
14 | font-size: 0;
15 | font-size: 10%;
16 | font-size: 10.5%;
17 | font-size: abc; /* Noncompliant !{Update the invalid value of property "font-size". Expected format: xx-small | x-small | small | medium | large | x-large | xx-large | larger | smaller | (>=0) | (>=0)}! */
18 | font-size: 10; /* Noncompliant */
19 | font-size: -10px; /* Noncompliant */
20 | font-size: -10%; /* Noncompliant */
21 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/font-stretch.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | font-stretch: inherit;
3 | font-stretch: normal;
4 | font-stretch: ultra-condensed;
5 | font-stretch: extra-condensed;
6 | font-stretch: condensed;
7 | font-stretch: semi-condensed;
8 | font-stretch: semi-expanded;
9 | font-stretch: expanded;
10 | font-stretch: extra-expanded;
11 | font-stretch: ultra-expanded;
12 | font-stretch: wider;
13 | font-stretch: narrower;
14 | font-stretch: abc; /* Noncompliant !{Update the invalid value of property "font-stretch". Expected format: normal | ultra-condensed | extra-condensed | condensed | semi-condensed | semi-expanded | expanded | extra-expanded | ultra-expanded | wider | narrower}! */
15 | font-stretch: 10px; /* Noncompliant */
16 | font-stretch: 0; /* Noncompliant */
17 | }
18 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/font-style.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | font-style: inherit;
3 | font-style: normal;
4 | font-style: italic;
5 | font-style: oblique;
6 | font-style: abc; /* Noncompliant !{Update the invalid value of property "font-style". Expected format: normal | italic | oblique}! */
7 | font-style: 0px; /* Noncompliant */
8 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/font-synthesis.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | font-synthesis: inherit;
3 | font-synthesis: none;
4 | font-synthesis: weight;
5 | font-synthesis: style;
6 | font-synthesis: weight style;
7 | font-synthesis: style weight;
8 | font-synthesis: abc; /* Noncompliant !{Update the invalid value of property "font-synthesis". Expected format: none | [ weight || style ]}! */
9 | font-synthesis: 0; /* Noncompliant */
10 | font-synthesis: 0px; /* Noncompliant */
11 | font-synthesis: none weight; /* Noncompliant */
12 | font-synthesis: weight none; /* Noncompliant */
13 | font-synthesis: weight abc; /* Noncompliant */
14 | }
15 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/font-variant-caps.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | font-variant-caps: inherit;
3 | font-variant-caps: normal;
4 | font-variant-caps: small-caps;
5 | font-variant-caps: all-small-caps;
6 | font-variant-caps: petite-caps;
7 | font-variant-caps: all-petite-caps;
8 | font-variant-caps: unicase;
9 | font-variant-caps: titling-caps;
10 | font-variant-caps: 10%; /* Noncompliant !{Update the invalid value of property "font-variant-caps". Expected format: normal | small-caps | all-small-caps | petite-caps | all-petite-caps | unicase | titling-caps}! */
11 | font-variant-caps: none; /* Noncompliant */
12 | font-variant-caps: 10; /* Noncompliant */
13 | }
14 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/font-variant-position.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | font-variant-position: inherit;
3 | font-variant-position: normal;
4 | font-variant-position: sub;
5 | font-variant-position: super;
6 | font-variant-position: 10%; /* Noncompliant !{Update the invalid value of property "font-variant-position". Expected format: normal | sub | super}! */
7 | font-variant-position: none; /* Noncompliant */
8 | font-variant-position: 10; /* Noncompliant */
9 | }
10 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/font-weight.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | font-weight: inherit;
3 | font-weight: normal;
4 | font-weight: bold;
5 | font-weight: bolder;
6 | font-weight: lighter;
7 | font-weight: 100;
8 | font-weight: 200;
9 | font-weight: 300;
10 | font-weight: 400;
11 | font-weight: 500;
12 | font-weight: 600;
13 | font-weight: 700;
14 | font-weight: 800;
15 | font-weight: 900;
16 | font-weight: abc; /* Noncompliant !{Update the invalid value of property "font-weight". Expected format: normal | bold | bolder | lighter | 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900}! */
17 | font-weight: 150; /* Noncompliant */
18 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/footnote-display.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | footnote-display: inherit;
3 | footnote-display: block;
4 | footnote-display: inline;
5 | footnote-display: compact;
6 | footnote-display: abc; /* Noncompliant !{Update the invalid value of property "footnote-display". Expected format: block | inline | compact}! */
7 | footnote-display: 10; /* Noncompliant */
8 | }
9 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/footnote-policy.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | footnote-policy: inherit;
3 | footnote-policy: auto;
4 | footnote-policy: line;
5 | footnote-policy: block;
6 | footnote-policy: abc; /* Noncompliant !{Update the invalid value of property "footnote-policy". Expected format: auto | line | block}! */
7 | footnote-policy: 10; /* Noncompliant */
8 | }
9 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/height.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | height: inherit;
3 | height: auto;
4 | height: 100%;
5 | height: -100%;
6 | height: 10px;
7 | height: -10px;
8 | height: 10; /* Noncompliant !{Update the invalid value of property "height". Expected format: auto | | | fill | max-content | min-content | fit-content | (fit-content)}! */
9 | height: abc; /* Noncompliant */
10 | height: fill;
11 | height: max-content;
12 | height: min-content;
13 | height: fit-content;
14 | height: fit-content(10%);
15 | }
16 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/high-contrast-adjust.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | high-contrast-adjust: inherit;
3 | high-contrast-adjust: auto;
4 | high-contrast-adjust: none;
5 | high-contrast-adjust: abc; /* Noncompliant !{Update the invalid value of property "high-contrast-adjust". Expected format: auto | none}! */
6 | high-contrast-adjust: 10; /* Noncompliant */
7 | }
8 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/high-contrast.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | high-contrast: inherit;
3 | high-contrast: active;
4 | high-contrast: black-on-white;
5 | high-contrast: white-on-black;
6 | high-contrast: abc; /* Noncompliant !{Update the invalid value of property "high-contrast". Expected format: active | black-on-white | white-on-black}! */
7 | high-contrast: 10; /* Noncompliant */
8 | high-contrast: 10px; /* Noncompliant */
9 | }
10 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/hyphens.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | hyphens: inherit;
3 | hyphens: none;
4 | hyphens: manual;
5 | hyphens: auto;
6 | hyphens: top; /* Noncompliant !{Update the invalid value of property "hyphens". Expected format: none | manual | auto}! */
7 | hyphens: Opx; /* Noncompliant */
8 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/image-rendering.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | image-rendering: inherit;
3 | image-rendering: auto;
4 | image-rendering: crisp-edges;
5 | image-rendering: pixelated;
6 | image-rendering: abc; /* Noncompliant !{Update the invalid value of property "image-rendering". Expected format: auto | crisp-edges | pixelated}! */
7 | image-rendering: 10px; /* Noncompliant */
8 | image-rendering: 10; /* Noncompliant */
9 | }
10 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/inline-box-align.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | inline-box-align: inherit;
3 | inline-box-align: initial;
4 | inline-box-align: last;
5 | inline-box-align: 10;
6 | inline-box-align: -10;
7 | inline-box-align: 1.5; /* Noncompliant !{Update the invalid value of property "inline-box-align". Expected format: initial | last | }! */
8 | inline-box-align: abc; /* Noncompliant */
9 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/isolation.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | isolation: inherit;
3 | isolation: auto;
4 | isolation: isolate;
5 | isolation: auto isolate; /* Noncompliant !{Update the invalid value of property "isolation". Expected format: auto | isolate}! */
6 | isolation: abc; /* Noncompliant */
7 | isolation: 10; /* Noncompliant */
8 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/justify-content.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | justify-content: inherit;
3 | justify-content: flex-start;
4 | justify-content: flex-end;
5 | justify-content: center;
6 | justify-content: space-between;
7 | justify-content: space-around;
8 | justify-content: abc; /* Noncompliant !{Update the invalid value of property "justify-content". Expected format: flex-start | flex-end | center | space-between | space-around}! */
9 | justify-content: 10; /* Noncompliant */
10 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/kerning.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | kerning: inherit;
3 | kerning: auto;
4 | kerning: 10px;
5 | kerning: -10px;
6 | kerning: 10; /* Noncompliant !{Update the invalid value of property "kerning". Expected format: auto | }! */
7 | kerning: abc; /* Noncompliant */
8 | }
9 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/layout-flow.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | layout-flow: inherit;
3 | layout-flow: horizontal;
4 | layout-flow: vertical-ideographic;
5 | layout-flow: abc; /* Noncompliant !{Update the invalid value of property "layout-flow". Expected format: horizontal | vertical-ideographic}! */
6 | layout-flow: 10; /* Noncompliant */
7 | }
8 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/layout-grid-char.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | layout-grid-char: inherit;
3 | layout-grid-char: none;
4 | layout-grid-char: auto;
5 | layout-grid-char: 10px;
6 | layout-grid-char: -10px;
7 | layout-grid-char: 10%;
8 | layout-grid-char: -10%;
9 | layout-grid-char: abc; /* Noncompliant !{Update the invalid value of property "layout-grid-char". Expected format: none | auto | | }! */
10 | layout-grid-char: 10; /* Noncompliant */
11 | }
12 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/layout-grid-line.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | layout-grid-line: inherit;
3 | layout-grid-line: none;
4 | layout-grid-line: auto;
5 | layout-grid-line: 10px;
6 | layout-grid-line: -10px;
7 | layout-grid-line: abc; /* Noncompliant !{Update the invalid value of property "layout-grid-line". Expected format: none | auto | }! */
8 | layout-grid-line: 10; /* Noncompliant */
9 | layout-grid-line: 10%; /* Noncompliant */
10 | }
11 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/layout-grid-mode.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | layout-grid-mode: inherit;
3 | layout-grid-mode: both;
4 | layout-grid-mode: none;
5 | layout-grid-mode: line;
6 | layout-grid-mode: char;
7 | layout-grid-mode: abc; /* Noncompliant !{Update the invalid value of property "layout-grid-mode". Expected format: both | none | line | char}! */
8 | layout-grid-mode: 10; /* Noncompliant */
9 | layout-grid-mode: 10%; /* Noncompliant */
10 | }
11 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/layout-grid-type.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | layout-grid-type: inherit;
3 | layout-grid-type: loose;
4 | layout-grid-type: strict;
5 | layout-grid-type: fixed;
6 | layout-grid-type: abc; /* Noncompliant !{Update the invalid value of property "layout-grid-type". Expected format: loose | strict | fixed}! */
7 | layout-grid-type: 10; /* Noncompliant */
8 | layout-grid-type: 10%; /* Noncompliant */
9 | }
10 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/left.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | left: inherit;
3 | left: auto;
4 | left: 10px;
5 | left: -10px;
6 | left: 10%;
7 | left: -10%;
8 | left: abc; /* Noncompliant !{Update the invalid value of property "left". Expected format: auto | | }! */
9 | left: 12; /* Noncompliant */
10 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/letter-spacing.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | letter-spacing: inherit;
3 | letter-spacing: normal;
4 | letter-spacing: 10px;
5 | letter-spacing: -10px;
6 | letter-spacing: 10; /* Noncompliant !{Update the invalid value of property "letter-spacing". Expected format: normal | }! */
7 | letter-spacing: abc; /* Noncompliant */
8 | }
9 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/line-break.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | line-break: inherit;
3 | line-break: auto;
4 | line-break: loose;
5 | line-break: normal;
6 | line-break: strict;
7 | line-break: abc; /* Noncompliant !{Update the invalid value of property "line-break". Expected format: auto | loose | normal | strict}! */
8 | line-break: 10; /* Noncompliant */
9 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/line-grid.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | line-grid: inherit;
3 | line-grid: match-parent;
4 | line-grid: create;
5 | line-grid: abc; /* Noncompliant !{Update the invalid value of property "line-grid". Expected format: match-parent | create}! */
6 | line-grid: 10; /* Noncompliant */
7 | line-grid: 10px; /* Noncompliant */
8 | }
9 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/line-height.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | line-height: inherit;
3 | line-height: normal;
4 | line-height: none; /* Noncompliant */
5 | line-height: 10px;
6 | line-height: 10%;
7 | line-height: 10;
8 | line-height: -10px; /* Noncompliant !{Update the invalid value of property "line-height". Expected format: normal | (>=0) | (>=0) | (>=0)}! */
9 | line-height: -10%; /* Noncompliant */
10 | line-height: -10; /* Noncompliant */
11 | line-height: abc; /* Noncompliant */
12 | line-height: 10s; /* Noncompliant */
13 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/line-snap.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | line-snap: inherit;
3 | line-snap: none;
4 | line-snap: baseline;
5 | line-snap: contain;
6 | line-snap: abc; /* Noncompliant !{Update the invalid value of property "line-snap". Expected format: none | baseline | contain}! */
7 | line-snap: 10; /* Noncompliant */
8 | line-snap: 10px; /* Noncompliant */
9 | }
10 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/list-style-image.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | list-style-image: inherit;
3 | list-style-image: none;
4 | list-style-image: url(http://mybox);
5 | list-style-image: image();
6 | list-style-image: linear-gradient();
7 | list-style-image: abc; /* Noncompliant !{Update the invalid value of property "list-style-image". Expected format: none | }! */
8 | list-style-image: 10; /* Noncompliant */
9 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/list-style-position.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | list-style-position: inherit;
3 | list-style-position: inside;
4 | list-style-position: outside;
5 | list-style-position: abc; /* Noncompliant !{Update the invalid value of property "list-style-position". Expected format: inside | outside}! */
6 | list-style-position: 10; /* Noncompliant */
7 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/list-style-type.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | list-style-type: inherit;
3 | list-style-type: none;
4 | list-style-type: abc;
5 | list-style-type: symbols();
6 | list-style-type: "def";
7 | list-style-type: 10; /* Noncompliant !{Update the invalid value of property "list-style-type". Expected format: | | none}! */
8 | list-style-type: 10px; /* Noncompliant */
9 | list-style-type: abc(); /* Noncompliant */
10 | }
11 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/list-style.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | list-style: inherit;
3 | list-style: none;
4 | list-style: none url(http://mybox) "abc";
5 | list-style: none "abc" image();
6 | list-style: none abc image();
7 | list-style: none symbols() image();
8 | list-style: none "abc" image() abc; /* Noncompliant !{Update the invalid value of property "list-style". Expected format: || || }! */
9 | list-style: 10; /* Noncompliant */
10 | list-style: 10px; /* Noncompliant */
11 | list-style: abc image() 10px; /* Noncompliant */
12 | }
13 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/margin-bottom.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | margin-bottom: inherit;
3 | margin-bottom: auto;
4 | margin-bottom: 50%;
5 | margin-bottom: -50%;
6 | margin-bottom: 10pt;
7 | margin-bottom: -10pt;
8 | margin-bottom: 10; /* Noncompliant {Update the invalid value of property "margin-bottom". Expected format: auto | fill | | }! */
9 | margin-bottom: abc; /* Noncompliant */
10 | }
11 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/margin-left.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | margin-left: inherit;
3 | margin-left: auto;
4 | margin-left: 50%;
5 | margin-left: -50%;
6 | margin-left: 10pt;
7 | margin-left: -10pt;
8 | margin-left: 10; /* Noncompliant !{Update the invalid value of property "margin-left". Expected format: auto | fill | | }!*/
9 | margin-left: abc; /* Noncompliant */
10 | }
11 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/margin-right.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | margin-right: inherit;
3 | margin-right: auto;
4 | margin-right: 50%;
5 | margin-right: -50%;
6 | margin-right: 10pt;
7 | margin-right: -10pt;
8 | margin-right: 10; /* Noncompliant !{Update the invalid value of property "margin-right". Expected format: auto | fill | | }! */
9 | margin-right: abc; /* Noncompliant */
10 | }
11 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/margin-top.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | margin-top: inherit;
3 | margin-top: auto;
4 | margin-top: 50%;
5 | margin-top: -50%;
6 | margin-top: 10pt;
7 | margin-top: -10pt;
8 | margin-top: 10; /* Noncompliant !{Update the invalid value of property "margin-top". Expected format: auto | fill | | }! */
9 | margin-top: abc; /* Noncompliant */
10 | }
11 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/margin.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | margin: inherit;
3 | margin: auto;
4 | margin: 50%;
5 | margin: -50%;
6 | margin: 10pt;
7 | margin: -10pt;
8 | margin: 10; /* Noncompliant !{Update the invalid value of property "margin". Expected format: [ auto | fill | | ]{1,4}}! */
9 | margin: abc; /* Noncompliant */
10 | margin: 50% 50%;
11 | margin: 50% 50% 50%;
12 | margin: 50% 50% 50% 50%;
13 | margin: 50% 50% 50% 50% 50%; /* Noncompliant */
14 | margin: 50% 50% abc 50%; /* Noncompliant */
15 | margin: fill;
16 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/marker-end.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | marker-end: inherit;
3 | marker-end: none;
4 | marker-end: url("abc");
5 | marker-end: url; /* Noncompliant !{Update the invalid value of property "marker-end". Expected format: none | }! */
6 | marker-end: 10px; /* Noncompliant */
7 | }
8 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/marker-mid.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | marker-mid: inherit;
3 | marker-mid: none;
4 | marker-mid: url("abc");
5 | marker-mid: url; /* Noncompliant !{Update the invalid value of property "marker-mid". Expected format: none | }! */
6 | marker-mid: 10px; /* Noncompliant */
7 | }
8 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/marker-side.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | marker-side: inherit;
3 | marker-side: list-item;
4 | marker-side: list-container;
5 | marker-side: 10px; /* Noncompliant !{Update the invalid value of property "marker-side". Expected format: list-item | list-container}! */
6 | marker-side: abc; /* Noncompliant */
7 | }
8 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/marker-start.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | marker-start: inherit;
3 | marker-start: none;
4 | marker-start: url("abc");
5 | marker-start: url; /* Noncompliant !{Update the invalid value of property "marker-start". Expected format: none | }! */
6 | marker-start: 10px; /* Noncompliant */
7 | }
8 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/mask-border-mode.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | mask-border-mode: inherit;
3 | mask-border-mode: luminance;
4 | mask-border-mode: alpha;
5 | mask-border-mode: abc; /* Noncompliant !{Update the invalid value of property "mask-border-mode". Expected format: luminance | alpha}! */
6 | mask-border-mode: 10; /* Noncompliant */
7 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/mask-border-outset.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | mask-border-outset: inherit;
3 | mask-border-outset: auto; /* Noncompliant */
4 | mask-border-outset: 10px;
5 | mask-border-outset: 10;
6 | mask-border-outset: 10.5;
7 | mask-border-outset: 0;
8 | mask-border-outset: 10%; /* Noncompliant */
9 | mask-border-outset: abc; /* Noncompliant !{Update the invalid value of property "mask-border-outset". Expected format: [ | ]{1,4}}! */
10 | mask-border-outset: 10px 10px;
11 | mask-border-outset: 10px 10px 10px;
12 | mask-border-outset: 10px 10px 10px 10px;
13 | mask-border-outset: 10px 10px 10px 10px 10px; /* Noncompliant */
14 | mask-border-outset: 3 10em 10px 3;
15 | mask-border-outset: 3 10em abc 10px; /* Noncompliant */
16 | }
17 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/mask-border-repeat.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | mask-border-repeat: inherit;
3 | mask-border-repeat: stretch;
4 | mask-border-repeat: repeat;
5 | mask-border-repeat: round;
6 | mask-border-repeat: space;
7 | mask-border-repeat: abc; /* Noncompliant !{Update the invalid value of property "mask-border-repeat". Expected format: [ stretch | repeat | round | space ]{1,2}}! */
8 | mask-border-repeat: 10px; /* Noncompliant */
9 | mask-border-repeat: 10; /* Noncompliant */
10 | mask-border-repeat: stretch repeat;
11 | mask-border-repeat: round repeat;
12 | mask-border-repeat: round round;
13 | mask-border-repeat: round round round; /* Noncompliant */
14 | }
15 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/mask-border-source.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | mask-border-source: inherit;
3 | mask-border-source: none;
4 | mask-border-source: url(http://mybox);
5 | mask-border-source: image();
6 | mask-border-source: linear-gradient();
7 | mask-border-source: abc; /* Noncompliant !{Update the invalid value of property "mask-border-source". Expected format: none | }! */
8 | mask-border-source: 10; /* Noncompliant */
9 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/mask-border-width.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | mask-border-width: inherit;
3 | mask-border-width: auto;
4 | mask-border-width: 10px;
5 | mask-border-width: 10;
6 | mask-border-width: 10.5;
7 | mask-border-width: 0;
8 | mask-border-width: 10%;
9 | mask-border-width: abc; /* Noncompliant !{Update the invalid value of property "mask-border-width". Expected format: [ | | | auto ]{1,4}}! */
10 | mask-border-width: auto auto;
11 | mask-border-width: auto auto auto;
12 | mask-border-width: auto auto auto auto;
13 | mask-border-width: auto auto auto auto auto; /* Noncompliant */
14 | mask-border-width: 3 10% 10px auto;
15 | mask-border-width: 3 10% abc auto; /* Noncompliant */
16 | }
17 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/mask-type.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | mask-type: inherit;
3 | mask-type: luminance;
4 | mask-type: alpha;
5 | mask-type: abc; /* Noncompliant !{Update the invalid value of property "mask-type". Expected format: luminance | alpha}! */
6 | mask-type: 10px; /* Noncompliant */
7 | mask-type: 10; /* Noncompliant */
8 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/max-device-pixel-ratio.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | max-device-pixel-ratio: inherit;
3 | max-device-pixel-ratio: 0;
4 | max-device-pixel-ratio: 2;
5 | max-device-pixel-ratio: -2;
6 | max-device-pixel-ratio: 2.5;
7 | max-device-pixel-ratio: 2px; /* Noncompliant !{Update the invalid value of property "max-device-pixel-ratio". Expected format: }! */
8 | max-device-pixel-ratio: abc; /* Noncompliant */
9 | }
10 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/max-height.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | max-height: inherit;
3 | max-height: none;
4 | max-height: 100%;
5 | max-height: -100%;
6 | max-height: 10px;
7 | max-height: -10px;
8 | max-height: 10; /* Noncompliant !{Update the invalid value of property "max-height". Expected format: none | | | fill | max-content | min-content | fit-content | (fit-content)}! */
9 | max-height: auto; /* Noncompliant */
10 | max-height: fill;
11 | max-height: max-content;
12 | max-height: min-content;
13 | max-height: fit-content;
14 | max-height: fit-content(10%);
15 | }
16 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/max-lines.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | max-lines: inherit;
3 | max-lines: none;
4 | max-lines: 10;
5 | max-lines: 0;
6 | max-lines: -10;
7 | max-lines: 10s; /* Noncompliant !{Update the invalid value of property "max-lines". Expected format: none | }! */
8 | max-lines: abc; /* Noncompliant */
9 | }
10 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/max-width.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | max-width: inherit;
3 | max-width: none;
4 | max-width: 100%;
5 | max-width: -100%;
6 | max-width: 10px;
7 | max-width: -10px;
8 | max-width: 10; /* Noncompliant !{Update the invalid value of property "max-width". Expected format: none | | | fill | max-content | min-content | fit-content | (fit-content)}! */
9 | max-width: auto; /* Noncompliant */
10 | max-width: fill;
11 | max-width: max-content;
12 | max-width: min-content;
13 | max-width: fit-content;
14 | max-width: fit-content(10%);
15 | }
16 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/max-zoom.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | max-zoom: inherit;
3 | max-zoom: auto;
4 | max-zoom: 10%;
5 | max-zoom: 10;
6 | max-zoom: -10; /* Noncompliant !{Update the invalid value of property "max-zoom". Expected format: auto | (>=0) | (>=0)}! */
7 | max-zoom: -10%; /* Noncompliant */
8 | max-zoom: abc; /* Noncompliant */
9 | max-zoom: 10px; /* Noncompliant */
10 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/min-device-pixel-ratio.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | min-device-pixel-ratio: inherit;
3 | min-device-pixel-ratio: 0;
4 | min-device-pixel-ratio: 2;
5 | min-device-pixel-ratio: -2;
6 | min-device-pixel-ratio: 2.5;
7 | min-device-pixel-ratio: 2px; /* Noncompliant !{Update the invalid value of property "min-device-pixel-ratio". Expected format: }! */
8 | min-device-pixel-ratio: abc; /* Noncompliant */
9 | }
10 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/min-height.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | min-height: inherit;
3 | min-height: auto;
4 | min-height: 100%;
5 | min-height: -100%;
6 | min-height: 10px;
7 | min-height: -10px;
8 | min-height: 10; /* Noncompliant !{Update the invalid value of property "min-height". Expected format: auto | | | fill | max-content | min-content | fit-content | (fit-content)}! */
9 | min-height: none; /* Noncompliant */
10 | min-height: fill;
11 | min-height: max-content;
12 | min-height: min-content;
13 | min-height: fit-content;
14 | min-height: fit-content(10%);
15 | }
16 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/min-width.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | min-width: inherit;
3 | min-width: auto;
4 | min-width: 100%;
5 | min-width: -100%;
6 | min-width: 10px;
7 | min-width: -10px;
8 | min-width: 10; /* Noncompliant !{Update the invalid value of property "min-width". Expected format: auto | | | fill | max-content | min-content | fit-content | (fit-content)}! */
9 | min-width: none; /* Noncompliant */
10 | min-width: fill;
11 | min-width: max-content;
12 | min-width: min-content;
13 | min-width: fit-content;
14 | min-width: fit-content(10%);
15 | }
16 |
17 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/min-zoom.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | min-zoom: inherit;
3 | min-zoom: auto;
4 | min-zoom: 10%;
5 | min-zoom: 10;
6 | min-zoom: -10; /* Noncompliant !{Update the invalid value of property "min-zoom". Expected format: auto | (>=0) | (>=0)}! */
7 | min-zoom: -10%; /* Noncompliant */
8 | min-zoom: abc; /* Noncompliant */
9 | min-zoom: 10px; /* Noncompliant */
10 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/nav-down.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | nav-down: inherit;
3 | nav-down: auto;
4 | nav-down: #abc;
5 | nav-down: #abc "myelement";
6 | nav-down: #abc 'myelement';
7 | nav-down: #abc root;
8 | nav-down: #abc current;
9 | nav-down: 10; /* Noncompliant !{Update the invalid value of property "nav-down". Expected format: auto | [ current | root | ]?}! */
10 | nav-down: none; /* Noncompliant */
11 | nav-down: root; /* Noncompliant */
12 | nav-down: current; /* Noncompliant */
13 | nav-down: 'abc'; /* Noncompliant */
14 | nav-down: "abc"; /* Noncompliant */
15 | }
16 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/nav-left.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | nav-left: inherit;
3 | nav-left: auto;
4 | nav-left: #abc;
5 | nav-left: #abc "myelement";
6 | nav-left: #abc 'myelement';
7 | nav-left: #abc root;
8 | nav-left: #abc current;
9 | nav-left: 10; /* Noncompliant !{Update the invalid value of property "nav-left". Expected format: auto | [ current | root | ]?}! */
10 | nav-left: none; /* Noncompliant */
11 | nav-left: root; /* Noncompliant */
12 | nav-left: current; /* Noncompliant */
13 | nav-left: 'abc'; /* Noncompliant */
14 | nav-left: "abc"; /* Noncompliant */
15 | }
16 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/nav-right.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | nav-right: inherit;
3 | nav-right: auto;
4 | nav-right: #abc;
5 | nav-right: #abc "myelement";
6 | nav-right: #abc 'myelement';
7 | nav-right: #abc root;
8 | nav-right: #abc current;
9 | nav-right: 10; /* Noncompliant !{Update the invalid value of property "nav-right". Expected format: auto | [ current | root | ]?}! */
10 | nav-right: none; /* Noncompliant */
11 | nav-right: root; /* Noncompliant */
12 | nav-right: current; /* Noncompliant */
13 | nav-right: 'abc'; /* Noncompliant */
14 | nav-right: "abc"; /* Noncompliant */
15 | }
16 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/nav-up.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | nav-up: inherit;
3 | nav-up: auto;
4 | nav-up: #abc;
5 | nav-up: #abc "myelement";
6 | nav-up: #abc 'myelement';
7 | nav-up: #abc root;
8 | nav-up: #abc current;
9 | nav-up: 10; /* Noncompliant !{Update the invalid value of property "nav-up". Expected format: auto | [ current | root | ]?}! */
10 | nav-up: none; /* Noncompliant */
11 | nav-up: root; /* Noncompliant */
12 | nav-up: current; /* Noncompliant */
13 | nav-up: 'abc'; /* Noncompliant */
14 | nav-up: "abc"; /* Noncompliant */
15 | }
16 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/object-fit.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | object-fit: inherit;
3 | object-fit: fill;
4 | object-fit: contain;
5 | object-fit: cover;
6 | object-fit: none;
7 | object-fit: scale-down;
8 | object-fit: 10; /* Noncompliant !{Update the invalid value of property "object-fit". Expected format: fill | contain | cover | none | scale-down}! */
9 | object-fit: auto; /* Noncompliant */
10 | object-fit: 10px; /* Noncompliant */
11 | }
12 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/offset-after.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | offset-after: inherit;
3 | offset-after: auto;
4 | offset-after: 10px;
5 | offset-after: -10px;
6 | offset-after: 3%;
7 | offset-after: -3%;
8 | offset-after: abc; /* Noncompliant !{Update the invalid value of property "offset-after". Expected format: auto | | }! */
9 | offset-after: 0.5; /* Noncompliant */
10 | }
11 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/offset-before.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | offset-before: inherit;
3 | offset-before: auto;
4 | offset-before: 10px;
5 | offset-before: -10px;
6 | offset-before: 3%;
7 | offset-before: -3%;
8 | offset-before: abc; /* Noncompliant !{Update the invalid value of property "offset-before". Expected format: auto | | }! */
9 | offset-before: 0.5; /* Noncompliant */
10 | }
11 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/offset-end.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | offset-end: inherit;
3 | offset-end: auto;
4 | offset-end: 10px;
5 | offset-end: -10px;
6 | offset-end: 3%;
7 | offset-end: -3%;
8 | offset-end: abc; /* Noncompliant !{Update the invalid value of property "offset-end". Expected format: auto | | }! */
9 | offset-end: 0.5; /* Noncompliant */
10 | }
11 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/offset-start.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | offset-start: inherit;
3 | offset-start: auto;
4 | offset-start: 10px;
5 | offset-start: -10px;
6 | offset-start: 3%;
7 | offset-start: -3%;
8 | offset-start: abc; /* Noncompliant !{Update the invalid value of property "offset-start". Expected format: auto | | }! */
9 | offset-start: 0.5; /* Noncompliant */
10 | }
11 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/opacity.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | opacity: 0;
3 | opacity: 0.1;
4 | opacity: +0.1;
5 | opacity: 1.0;
6 | opacity: +1.0;
7 | opacity: -0.5; /* Noncompliant !{Update the invalid value of property "opacity". Expected format: (0.0,1.0)}! */
8 | opacity: +1.5; /* Noncompliant */
9 | opacity: 1.5; /* Noncompliant */
10 | opacity: inherit;
11 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/order.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | order: inherit;
3 | order: 10;
4 | order: -10;
5 | order: 10px; /* Noncompliant !{Update the invalid value of property "order". Expected format: }!*/
6 | order: 10.5; /* Noncompliant */
7 | order: auto; /* Noncompliant */
8 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/orientation.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | orientation: inherit;
3 | orientation: auto;
4 | orientation: portrait;
5 | orientation: landscape;
6 | orientation: 10; /* Noncompliant !{Update the invalid value of property "orientation". Expected format: auto | portrait | landscape}! */
7 | orientation: abc; /* Noncompliant */
8 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/orphans.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | orphans: inherit;
3 | orphans: 10;
4 | orphans: -10;
5 | orphans: 0;
6 | orphans: 10%; /* Noncompliant !{Update the invalid value of property "orphans". Expected format: }! */
7 | orphans: none; /* Noncompliant */
8 | orphans: 10px; /* Noncompliant */
9 | }
10 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/outline-color.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | outline-color: inherit;
3 | outline-color: red;
4 | outline-color: rgb(25,25,25);
5 | outline-color: 10px; /* Noncompliant !{Update the invalid value of property "outline-color". Expected format: | invert}! */
6 | outline-color: abc; /* Noncompliant */
7 | outline-color: invert;
8 | }
9 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/outline-offset.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | outline-offset: inherit;
3 | outline-offset: 0;
4 | outline-offset: 0px;
5 | outline-offset: 0.5px;
6 | outline-offset: +0.5px;
7 | outline-offset: -0.5px;
8 | outline-offset: abc; /* Noncompliant !{Update the invalid value of property "outline-offset". Expected format: }! */
9 | outline-offset: 10; /* Noncompliant */
10 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/outline-style.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | outline-style: inherit;
3 | outline-style: none;
4 | outline-style: hidden;
5 | outline-style: dashed;
6 | outline-style: double;
7 | outline-style: groove;
8 | outline-style: ridge;
9 | outline-style: inset;
10 | outline-style: outset;
11 | outline-style: 10px; /* Noncompliant !{Update the invalid value of property "outline-style". Expected format: none | hidden | dotted | dashed | solid | double | groove | ridge | inset | outset | auto}! */
12 | outline-style: abc; /* Noncompliant */
13 | outline-style: auto;
14 | }
15 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/outline-width.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | outline-width: inherit;
3 | outline-width: thin;
4 | outline-width: medium;
5 | outline-width: thick;
6 | outline-width: 10px;
7 | outline-width: -10px; /* Noncompliant !{Update the invalid value of property "outline-width". Expected format: thin | medium | thick | (>=0)}! */
8 | outline-width: abc; /* Noncompliant */
9 | }
10 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/outline.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | outline: inherit;
3 | outline: dotted;
4 | outline: dotted thin;
5 | outline: dotted thin green;
6 | outline: thin green;
7 | outline: 10px green;
8 | outline: rgb(25,25,25) 10px;
9 | outline: dotted thin green green; /* Noncompliant !{Update the invalid value of property "outline". Expected format: || || }! */
10 | outline: dotted abc green; /* Noncompliant */
11 | outline: dotted -10px green; /* Noncompliant */
12 | }
13 |
14 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/overflow-style.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | overflow-style: inherit;
3 | overflow-style: auto;
4 | overflow-style: none;
5 | overflow-style: scrollbar;
6 | overflow-style: -ms-autohiding-scrollbar;
7 | overflow-style: abc; /* Noncompliant !{Update the invalid value of property "overflow-style". Expected format: auto | none | scrollbar | -ms-autohiding-scrollbar}! */
8 | overflow-style: 10; /* Noncompliant */
9 | overflow-style: 10%; /* Noncompliant */
10 | }
11 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/overflow-wrap.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | overflow-wrap: inherit;
3 | overflow-wrap: normal;
4 | overflow-wrap: break-word;
5 | overflow-wrap: 0; /* Noncompliant !{Update the invalid value of property "overflow-wrap". Expected format: normal | break-word}! */
6 | overflow-wrap: 0px; /* Noncompliant */
7 | overflow-wrap: abc; /* Noncompliant */
8 | }
9 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/overflow-x.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | overflow-x: inherit;
3 | overflow-x: visible;
4 | overflow-x: hidden;
5 | overflow-x: clip;
6 | overflow-x: scroll;
7 | overflow-x: auto;
8 | overflow-x: 0; /* Noncompliant !{Update the invalid value of property "overflow-x". Expected format: visible | hidden | clip | scroll | auto}! */
9 | overflow-x: 0px; /* Noncompliant */
10 | overflow-x: abc; /* Noncompliant */
11 | overflow-x: no-content; /* Noncompliant */
12 | overflow-x: no-display; /* Noncompliant */
13 | }
14 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/overflow-y.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | overflow-y: inherit;
3 | overflow-y: visible;
4 | overflow-y: hidden;
5 | overflow-y: clip;
6 | overflow-y: scroll;
7 | overflow-y: auto;
8 | overflow-y: 0; /* Noncompliant !{Update the invalid value of property "overflow-y". Expected format: visible | hidden | clip | scroll | auto}! */
9 | overflow-y: 0px; /* Noncompliant */
10 | overflow-y: abc; /* Noncompliant */
11 | overflow-y: no-content; /* Noncompliant */
12 | overflow-y: no-display; /* Noncompliant */
13 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/overflow.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | overflow: inherit;
3 | overflow: visible;
4 | overflow: hidden;
5 | overflow: clip;
6 | overflow: scroll;
7 | overflow: auto;
8 | overflow: 0; /* Noncompliant !{Update the invalid value of property "overflow". Expected format: visible | hidden | clip | scroll | auto}! */
9 | overflow: 0px; /* Noncompliant */
10 | overflow: abc; /* Noncompliant */
11 | overflow: no-content; /* Noncompliant */
12 | overflow: no-display; /* Noncompliant */
13 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/padding-bottom.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | padding-bottom: inherit;
3 | padding-bottom: 50%;
4 | padding-bottom: -50%; /* Noncompliant !{Update the invalid value of property "padding-bottom". Expected format: (>=0) | (>=0)}! */
5 | padding-bottom: 10pt;
6 | padding-bottom: -10pt; /* Noncompliant */
7 | padding-bottom: 10; /* Noncompliant */
8 | padding-bottom: abc; /* Noncompliant */
9 | }
10 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/padding-left.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | padding-left: inherit;
3 | padding-left: 50%;
4 | padding-left: -50%; /* Noncompliant !{Update the invalid value of property "padding-left". Expected format: (>=0) | (>=0)}! */
5 | padding-left: 10pt;
6 | padding-left: -10pt; /* Noncompliant */
7 | padding-left: 10; /* Noncompliant */
8 | padding-left: abc; /* Noncompliant */
9 | }
10 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/padding-right.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | padding-right: inherit;
3 | padding-right: 50%;
4 | padding-right: -50%; /* Noncompliant !{Update the invalid value of property "padding-right". Expected format: (>=0) | (>=0)}! */
5 | padding-right: 10pt;
6 | padding-right: -10pt; /* Noncompliant */
7 | padding-right: 10; /* Noncompliant */
8 | padding-right: abc; /* Noncompliant */
9 | }
10 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/padding-top.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | padding-top: inherit;
3 | padding-top: 50%;
4 | padding-top: -50%; /* Noncompliant !{Update the invalid value of property "padding-top". Expected format: (>=0) | (>=0)}!*/
5 | padding-top: 10pt;
6 | padding-top: -10pt; /* Noncompliant */
7 | padding-top: 10; /* Noncompliant */
8 | padding-top: abc; /* Noncompliant */
9 | }
10 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/padding.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | padding: inherit;
3 | padding: 50%;
4 | padding: -50%; /* Noncompliant !{Update the invalid value of property "padding". Expected format: [ (>=0) | (>=0) ]{1,4}}! */
5 | padding: 10pt;
6 | padding: -10pt; /* Noncompliant */
7 | padding: 10; /* Noncompliant */
8 | padding: abc; /* Noncompliant */
9 | padding: 50% 50%;
10 | padding: 50% 50% 50%;
11 | padding: 50% 50% 50% 50%;
12 | padding: 50% 50% 50% 50% 50%; /* Noncompliant */
13 | padding: 50% 50% abc 50%; /* Noncompliant */
14 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/page-break-after.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | page-break-after: inherit;
3 | page-break-after: auto;
4 | page-break-after: always;
5 | page-break-after: avoid;
6 | page-break-after: left;
7 | page-break-after: right;
8 | page-break-after: 10; /* Noncompliant !{Update the invalid value of property "page-break-after". Expected format: auto | always | avoid | left | right}! */
9 | page-break-after: none; /* Noncompliant */
10 | page-break-after: 10px; /* Noncompliant */
11 | }
12 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/page-break-before.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | page-break-before: inherit;
3 | page-break-before: auto;
4 | page-break-before: always;
5 | page-break-before: avoid;
6 | page-break-before: left;
7 | page-break-before: right;
8 | page-break-before: 10; /* Noncompliant !{Update the invalid value of property "page-break-before". Expected format: auto | always | avoid | left | right}! */
9 | page-break-before: none; /* Noncompliant */
10 | page-break-before: 10px; /* Noncompliant */
11 | }
12 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/page-break-inside.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | page-break-inside: inherit;
3 | page-break-inside: auto;
4 | page-break-inside: avoid;
5 | page-break-inside: 10; /* Noncompliant !{Update the invalid value of property "page-break-inside". Expected format: avoid | auto}! */
6 | page-break-inside: none; /* Noncompliant */
7 | page-break-inside: 10px; /* Noncompliant */
8 | }
9 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/pause-after.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | pause-after: inherit;
3 | pause-after: 3s;
4 | pause-after: none;
5 | pause-after: x-weak;
6 | pause-after: weak;
7 | pause-after: medium;
8 | pause-after: strong;
9 | pause-after: x-strong;
10 | pause-after: -3s; /* Noncompliant !{Update the invalid value of property "pause-after". Expected format: (>=0) | none | x-weak | weak | medium | strong | x-strong}! */
11 | pause-after: 50.5%; /* Noncompliant */
12 | pause-after: abc; /* Noncompliant */
13 | pause-after: 10px; /* Noncompliant */
14 | }
15 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/pause-before.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | pause-before: inherit;
3 | pause-before: 3s;
4 | pause-before: none;
5 | pause-before: x-weak;
6 | pause-before: weak;
7 | pause-before: medium;
8 | pause-before: strong;
9 | pause-before: x-strong;
10 | pause-before: -3s; /* Noncompliant !{Update the invalid value of property "pause-before". Expected format: (>=0) | none | x-weak | weak | medium | strong | x-strong}! */
11 | pause-before: 50.5%; /* Noncompliant */
12 | pause-before: abc; /* Noncompliant */
13 | pause-before: 10px; /* Noncompliant */
14 | }
15 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/pause.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | pause: inherit;
3 | pause: 3s;
4 | pause-before: none;
5 | pause-before: x-weak;
6 | pause-before: weak;
7 | pause-before: medium;
8 | pause-before: strong;
9 | pause-before: x-strong;
10 | pause: -3s; /* Noncompliant !{Update the invalid value of property "pause". Expected format: ?}! */
11 | pause: 50.5%; /* Noncompliant */
12 | pause: abc; /* Noncompliant */
13 | pause: 10px; /* Noncompliant */
14 | pause: 3s 3s;
15 | pause: weak medium;
16 | pause: 3s 3s 3s; /* Noncompliant */
17 | pause: 3s 10px; /* Noncompliant */
18 | }
19 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/perspective.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | perspective: inherit;
3 | perspective: none;
4 | perspective: 10px;
5 | perspective: -10px; /* Noncompliant !{Update the invalid value of property "perspective". Expected format: none | (>=0)}! */
6 | perspective: abc; /* Noncompliant */
7 | perspective: 10; /* Noncompliant */
8 | }
9 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/pointer-events.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | pointer-events: inherit;
3 | pointer-events: visiblePainted;
4 | pointer-events: visiblepainted;
5 | pointer-events: visibleFill;
6 | pointer-events: visiblefill;
7 | pointer-events: visibleStroke;
8 | pointer-events: visiblestroke;
9 | pointer-events: visible;
10 | pointer-events: painted;
11 | pointer-events: fill;
12 | pointer-events: stroke;
13 | pointer-events: all;
14 | pointer-events: none;
15 | pointer-events: abc; /* Noncompliant !{Update the invalid value of property "pointer-events". Expected format: visiblepainted | visiblefill | visiblestroke | visible | painted | fill | stroke | all | none}! */
16 | pointer-events: 10px; /* Noncompliant */
17 | }
18 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/position.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | position: inherit;
3 | position: static;
4 | position: relative;
5 | position: absolute;
6 | position: fixed;
7 | position: sticky;
8 | position: marker;
9 | position: running(abc);
10 | position: 10px; /* Noncompliant !{Update the invalid value of property "position". Expected format: static | relative | absolute | fixed | sticky | marker | (running)}! */
11 | position: abc; /* Noncompliant */
12 | }
13 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/prefix.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | prefix: inherit;
3 | prefix: none;
4 | prefix: url(http://mybox);
5 | prefix: image();
6 | prefix: linear-gradient();
7 | prefix: abc;
8 | prefix: "abc";
9 | prefix: 'abc';
10 | prefix: 10px; /* Noncompliant !{Update the invalid value of property "prefix". Expected format: | | }! */
11 | prefix: 10; /* Noncompliant */
12 | prefix: image() image(); /* Noncompliant */
13 | }
14 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/quotes.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | quotes: inherit;
3 | quotes: none;
4 | quotes: "abc" "def";
5 | quotes: 'abc' 'def';
6 | quotes: 'abc' 'def' "ghi" "jkl";
7 | quotes: -3s; /* Noncompliant !{Update the invalid value of property "quotes". Expected format: none | [ ]+}! */
8 | quotes: 50.5%; /* Noncompliant */
9 | quotes: abc; /* Noncompliant */
10 | quotes: "abc" "def" "ghi"; /* Noncompliant */
11 | quotes: "abc" "def" "ghi" "jkl" "mno"; /* Noncompliant */
12 | }
13 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/region-fragment.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | region-fragment: inherit;
3 | region-fragment: auto;
4 | region-fragment: break;
5 | region-fragment: 10; /* Noncompliant !{Update the invalid value of property "region-fragment". Expected format: auto | break}! */
6 | region-fragment: none; /* Noncompliant */
7 | region-fragment: 10px; /* Noncompliant */
8 | }
9 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/resize.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | resize: inherit;
3 | resize: none;
4 | resize: both;
5 | resize: horizontal;
6 | resize: vertical;
7 | resize: abc; /* Noncompliant !{Update the invalid value of property "resize". Expected format: none | both | horizontal | vertical}! */
8 | resize: 10px; /* Noncompliant */
9 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/rest-after.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | rest-after: inherit;
3 | rest-after: 3s;
4 | rest-after: none;
5 | rest-after: x-weak;
6 | rest-after: weak;
7 | rest-after: medium;
8 | rest-after: strong;
9 | rest-after: x-strong;
10 | rest-after: -3s; /* Noncompliant !{Update the invalid value of property "rest-after". Expected format: (>=0) | none | x-weak | weak | medium | strong | x-strong}! */
11 | rest-after: 50.5%; /* Noncompliant */
12 | rest-after: abc; /* Noncompliant */
13 | rest-after: 10px; /* Noncompliant */
14 | }
15 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/rest-before.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | rest-before: inherit;
3 | rest-before: 3s;
4 | rest-before: none;
5 | rest-before: x-weak;
6 | rest-before: weak;
7 | rest-before: medium;
8 | rest-before: strong;
9 | rest-before: x-strong;
10 | rest-before: -3s; /* Noncompliant !{Update the invalid value of property "rest-before". Expected format: (>=0) | none | x-weak | weak | medium | strong | x-strong}! */
11 | rest-before: 50.5%; /* Noncompliant */
12 | rest-before: abc; /* Noncompliant */
13 | rest-before: 10px; /* Noncompliant */
14 | }
15 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/rest.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | rest: inherit;
3 | rest: 3s;
4 | rest-before: none;
5 | rest-before: x-weak;
6 | rest-before: weak;
7 | rest-before: medium;
8 | rest-before: strong;
9 | rest-before: x-strong;
10 | rest: -3s; /* Noncompliant !{Update the invalid value of property "rest". Expected format: ?}! */
11 | rest: 50.5%; /* Noncompliant */
12 | rest: abc; /* Noncompliant */
13 | rest: 10px; /* Noncompliant */
14 | rest: 3s 3s;
15 | rest: weak medium;
16 | rest: 3s 3s 3s; /* Noncompliant */
17 | rest: 3s 10px; /* Noncompliant */
18 | }
19 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/right.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | right: inherit;
3 | right: auto;
4 | right: 10px;
5 | right: -10px;
6 | right: 10%;
7 | right: -10%;
8 | right: abc; /* Noncompliant !{Update the invalid value of property "right". Expected format: auto | | }! */
9 | right: 12; /* Noncompliant */
10 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/ruby-align.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | ruby-align: inherit;
3 | ruby-align: start;
4 | ruby-align: center;
5 | ruby-align: space-between;
6 | ruby-align: space-around;
7 | ruby-align: 10; /* Noncompliant !{Update the invalid value of property "ruby-align". Expected format: start | center | space-between | space-around}! */
8 | ruby-align: none; /* Noncompliant */
9 | ruby-align: 10px; /* Noncompliant */
10 | }
11 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/ruby-merge.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | ruby-merge: inherit;
3 | ruby-merge: separate;
4 | ruby-merge: collapse;
5 | ruby-merge: auto;
6 | ruby-merge: 10; /* Noncompliant !{Update the invalid value of property "ruby-merge". Expected format: separate | collapse | auto}! */
7 | ruby-merge: none; /* Noncompliant */
8 | ruby-merge: 10px; /* Noncompliant */
9 | }
10 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/ruby-position.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | ruby-position: inherit;
3 | ruby-position: over;
4 | ruby-position: under;
5 | ruby-position: inter-character;
6 | ruby-position: 10; /* Noncompliant !{Update the invalid value of property "ruby-position". Expected format: over | under | inter-character}! */
7 | ruby-position: none; /* Noncompliant */
8 | ruby-position: 10px; /* Noncompliant */
9 | }
10 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/scroll-behavior.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | scroll-behavior: inherit;
3 | scroll-behavior: auto;
4 | scroll-behavior: smooth;
5 | scroll-behavior: 10; /* Noncompliant !{Update the invalid value of property "scroll-behavior". Expected format: auto | smooth}! */
6 | scroll-behavior: abc; /* Noncompliant */
7 | scroll-behavior: 50%; /* Noncompliant */
8 | scroll-behavior: smooth smooth; /* Noncompliant */
9 | }
10 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/scroll-chaining.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | scroll-chaining: inherit;
3 | scroll-chaining: none;
4 | scroll-chaining: chained;
5 | scroll-chaining: abc; /* Noncompliant !{Update the invalid value of property "scroll-chaining". Expected format: none | chained}! */
6 | scroll-chaining: 10; /* Noncompliant */
7 | scroll-chaining: 10%; /* Noncompliant */
8 | }
9 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/scroll-limit-x-max.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | scroll-limit-x-max: inherit;
3 | scroll-limit-x-max: 10px;
4 | scroll-limit-x-max: -10px;
5 | scroll-limit-x-max: auto;
6 | scroll-limit-x-max: abc; /* Noncompliant !{Update the invalid value of property "scroll-limit-x-max". Expected format: auto | }! */
7 | scroll-limit-x-max: 10; /* Noncompliant */
8 | scroll-limit-x-max: 10%; /* Noncompliant */
9 | }
10 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/scroll-limit-x-min.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | scroll-limit-x-min: inherit;
3 | scroll-limit-x-min: 10px;
4 | scroll-limit-x-min: -10px;
5 | scroll-limit-x-min: auto; /* Noncompliant !{Update the invalid value of property "scroll-limit-x-min". Expected format: }! */
6 | scroll-limit-x-min: 10; /* Noncompliant */
7 | scroll-limit-x-min: 10%; /* Noncompliant */
8 | }
9 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/scroll-limit-y-max.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | scroll-limit-y-max: inherit;
3 | scroll-limit-y-max: 10px;
4 | scroll-limit-y-max: -10px;
5 | scroll-limit-y-max: auto;
6 | scroll-limit-y-max: abc; /* Noncompliant !{Update the invalid value of property "scroll-limit-y-max". Expected format: auto | }! */
7 | scroll-limit-y-max: 10; /* Noncompliant */
8 | scroll-limit-y-max: 10%; /* Noncompliant */
9 | }
10 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/scroll-limit-y-min.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | scroll-limit-y-min: inherit;
3 | scroll-limit-y-min: 10px;
4 | scroll-limit-y-min: -10px;
5 | scroll-limit-y-min: auto; /* Noncompliant !{Update the invalid value of property "scroll-limit-y-min". Expected format: }! */
6 | scroll-limit-y-min: 10; /* Noncompliant */
7 | scroll-limit-y-min: 10%; /* Noncompliant */
8 | }
9 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/scroll-rails.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | scroll-rails: inherit;
3 | scroll-rails: none;
4 | scroll-rails: railed;
5 | scroll-rails: abc; /* Noncompliant !{Update the invalid value of property "scroll-rails". Expected format: none | railed}! */
6 | scroll-rails: 10%; /* Noncompliant */
7 | }
8 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/scroll-snap-points-x.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | scroll-snap-points-x: inherit;
3 | scroll-snap-points-x: snapInterval(10%, 10%);
4 | scroll-snap-points-x: snapinterval(10%, 10%);
5 | scroll-snap-points-x: snapList(10%);
6 | scroll-snap-points-x: snaplist(10%);
7 | scroll-snap-points-x: abc; /* Noncompliant !{Update the invalid value of property "scroll-snap-points-x". Expected format: (snapinterval | snaplist)}! */
8 | scroll-snap-points-x: 10%; /* Noncompliant */
9 | }
10 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/scroll-snap-points-y.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | scroll-snap-points-y: inherit;
3 | scroll-snap-points-y: snapInterval(10%, 10%);
4 | scroll-snap-points-y: snapinterval(10%, 10%);
5 | scroll-snap-points-y: snapList(10%);
6 | scroll-snap-points-y: snaplist(10%);
7 | scroll-snap-points-y: abc; /* Noncompliant !{Update the invalid value of property "scroll-snap-points-y". Expected format: (snapinterval | snaplist)}! */
8 | scroll-snap-points-y: 10%; /* Noncompliant */
9 | }
10 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/scroll-snap-type.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | scroll-snap-type: inherit;
3 | scroll-snap-type: none;
4 | scroll-snap-type: proximity;
5 | scroll-snap-type: mandatory;
6 | scroll-snap-type: abc; /* Noncompliant !{Update the invalid value of property "scroll-snap-type". Expected format: none | proximity | mandatory}! */
7 | scroll-snap-type: 10%; /* Noncompliant */
8 | }
9 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/scroll-translation.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | scroll-translation: inherit;
3 | scroll-translation: none;
4 | scroll-translation: vertical-to-horizontal;
5 | scroll-translation: abc; /* Noncompliant !{Update the invalid value of property "scroll-translation". Expected format: none | vertical-to-horizontal}! */
6 | scroll-translation: 10px; /* Noncompliant */
7 | scroll-translation: 10; /* Noncompliant */
8 | }
9 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/shape-image-threshold.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | shape-image-threshold: inherit;
3 | shape-image-threshold: 0;
4 | shape-image-threshold: 0.0;
5 | shape-image-threshold: 0.1;
6 | shape-image-threshold: 1;
7 | shape-image-threshold: 1.0;
8 | shape-image-threshold: 2.5; /* Noncompliant !{Update the invalid value of property "shape-image-threshold". Expected format: (0.0,1.0)}! */
9 | shape-image-threshold: -2.5; /* Noncompliant */
10 | shape-image-threshold: abc; /* Noncompliant */
11 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/shape-margin.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | shape-margin: inherit;
3 | shape-margin: 10px;
4 | shape-margin: 10%;
5 | shape-margin: 10; /* Noncompliant !{Update the invalid value of property "shape-margin". Expected format: | }! */
6 | shape-margin: abc; /* Noncompliant */
7 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/shape-rendering.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | shape-rendering: inherit;
3 | shape-rendering: auto;
4 | shape-rendering: optimizeSpeed;
5 | shape-rendering: optimizespeed;
6 | shape-rendering: crispEdges;
7 | shape-rendering: crispedges;
8 | shape-rendering: geometricPrecision;
9 | shape-rendering: geometricprecision;
10 | shape-rendering: abc; /* Noncompliant !{Update the invalid value of property "shape-rendering". Expected format: auto | optimizespeed | crispedges | geometricprecision}! */
11 | shape-rendering: 10px; /* Noncompliant */
12 | shape-rendering: 10; /* Noncompliant */
13 | }
14 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/speak.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | speak: inherit;
3 | speak: normal;
4 | speak: none;
5 | speak: 3s; /* Noncompliant !{Update the invalid value of property "speak". Expected format: auto | normal | none}! */
6 | speak: -3s; /* Noncompliant */
7 | speak: 50.5%; /* Noncompliant */
8 | speak: abc; /* Noncompliant */
9 | speak: 10px; /* Noncompliant */
10 | }
11 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/stop-opacity.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | stop-opacity: 0;
3 | stop-opacity: 0.1;
4 | stop-opacity: +0.1;
5 | stop-opacity: 1.0;
6 | stop-opacity: +1.0;
7 | stop-opacity: -0.5; /* Noncompliant !{Update the invalid value of property "stop-opacity". Expected format: (0.0,1.0)}! */
8 | stop-opacity: +1.5; /* Noncompliant */
9 | stop-opacity: 1.5; /* Noncompliant */
10 | stop-opacity: inherit;
11 | }
12 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/stroke-dashoffset.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | stroke-dashoffset: inherit;
3 | stroke-dashoffset: 100%;
4 | stroke-dashoffset: -100%;
5 | stroke-dashoffset: 10px;
6 | stroke-dashoffset: -10px;
7 | stroke-dashoffset: 10; /* Noncompliant !{Update the invalid value of property "stroke-dashoffset". Expected format: | }! */
8 | stroke-dashoffset: abc; /* Noncompliant */
9 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/stroke-linecap.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | stroke-linecap: inherit;
3 | stroke-linecap: butt;
4 | stroke-linecap: round;
5 | stroke-linecap: square;
6 | stroke-linecap: 100%; /* Noncompliant !{Update the invalid value of property "stroke-linecap". Expected format: butt | round | square}! */
7 | stroke-linecap: 10px; /* Noncompliant */
8 | stroke-linecap: 10; /* Noncompliant */
9 | stroke-linecap: abc; /* Noncompliant */
10 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/stroke-linejoin.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | stroke-linejoin: inherit;
3 | stroke-linejoin: miter;
4 | stroke-linejoin: round;
5 | stroke-linejoin: bevel;
6 | stroke-linejoin: 100%; /* Noncompliant !{Update the invalid value of property "stroke-linejoin". Expected format: miter | round | bevel}! */
7 | stroke-linejoin: 10px; /* Noncompliant */
8 | stroke-linejoin: 10; /* Noncompliant */
9 | stroke-linejoin: abc; /* Noncompliant */
10 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/stroke-miterlimit.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | stroke-miterlimit: inherit;
3 | stroke-miterlimit: 1;
4 | stroke-miterlimit: 1.0;
5 | stroke-miterlimit: 1000.4;
6 | stroke-miterlimit: 100%; /* Noncompliant !{Update the invalid value of property "stroke-miterlimit". Expected format: (1.0,infinite)}! */
7 | stroke-miterlimit: 10px; /* Noncompliant */
8 | stroke-miterlimit: abc; /* Noncompliant */
9 | stroke-miterlimit: 0.5; /* Noncompliant */
10 | stroke-miterlimit: -0.5; /* Noncompliant */
11 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/stroke-opacity.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | stroke-opacity: 0;
3 | stroke-opacity: 0.1;
4 | stroke-opacity: +0.1;
5 | stroke-opacity: 1.0;
6 | stroke-opacity: +1.0;
7 | stroke-opacity: -0.5; /* Noncompliant !{Update the invalid value of property "stroke-opacity". Expected format: (0.0,1.0)}! */
8 | stroke-opacity: +1.5; /* Noncompliant */
9 | stroke-opacity: 1.5; /* Noncompliant */
10 | stroke-opacity: inherit;
11 | }
12 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/stroke-width.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | stroke-width: inherit;
3 | stroke-width: 100%;
4 | stroke-width: 10px;
5 | stroke-width: -100%; /* Noncompliant !{Update the invalid value of property "stroke-width". Expected format: (>=0) | (>=0)}! */
6 | stroke-width: -10px; /* Noncompliant */
7 | stroke-width: 10; /* Noncompliant */
8 | stroke-width: abc; /* Noncompliant */
9 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/suffix.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | suffix: inherit;
3 | suffix: none;
4 | suffix: url(http://mybox);
5 | suffix: image();
6 | suffix: linear-gradient();
7 | suffix: abc;
8 | suffix: "abc";
9 | suffix: 'abc';
10 | suffix: 10px; /* Noncompliant !{Update the invalid value of property "suffix". Expected format: | | }! */
11 | suffix: 10; /* Noncompliant */
12 | suffix: image() image(); /* Noncompliant */
13 | }
14 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/symbols.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | symbols: inherit;
3 | symbols: none;
4 | symbols: url(http://mybox);
5 | symbols: image();
6 | symbols: linear-gradient();
7 | symbols: abc;
8 | symbols: "abc";
9 | symbols: 'abc';
10 | symbols: 10px; /* Noncompliant !{Update the invalid value of property "symbols". Expected format: [ | | ]+}! */
11 | symbols: 10; /* Noncompliant */
12 | symbols: image() image();
13 | symbols: image() image() image();
14 | symbols: image() image() image() image();
15 | symbols: image() image() abc;
16 | symbols: image() image() abc 10; /* Noncompliant */
17 | }
18 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/tab-size.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | tab-size: inherit;
3 | tab-size: 0;
4 | tab-size: 10;
5 | tab-size: 10px;
6 | tab-size: 10.5px;
7 | tab-size: -10; /* Noncompliant !{Update the invalid value of property "tab-size". Expected format: (>=0) | (>=0)}! */
8 | tab-size: -10px; /* Noncompliant */
9 | tab-size: abc; /* Noncompliant */
10 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/table-layout.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | table-layout: inherit;
3 | table-layout: auto;
4 | table-layout: fixed;
5 | table-layout: abc; /* Noncompliant !{Update the invalid value of property "table-layout". Expected format: auto | fixed}! */
6 | table-layout: 10; /* Noncompliant */
7 | }
8 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/text-align-all.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | text-align-all: inherit;
3 | text-align-all: start;
4 | text-align-all: end;
5 | text-align-all: left;
6 | text-align-all: right;
7 | text-align-all: center;
8 | text-align-all: justify;
9 | text-align-all: match-parent;
10 | text-align-all: abc; /* Noncompliant !{Update the invalid value of property "text-align-all". Expected format: start | end | left | right | center | justify | match-parent}! */
11 | text-align-all: 10; /* Noncompliant */
12 | }
13 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/text-align-last.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | text-align-last: inherit;
3 | text-align-last: auto;
4 | text-align-last: start;
5 | text-align-last: end;
6 | text-align-last: left;
7 | text-align-last: right;
8 | text-align-last: center;
9 | text-align-last: justify;
10 | text-align-last: abc; /* Noncompliant !{Update the invalid value of property "text-align-last". Expected format: auto | start | end | left | right | center | justify}! */
11 | text-align-last: 10; /* Noncompliant */
12 | }
13 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/text-align.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | text-align: inherit;
3 | text-align: start;
4 | text-align: end;
5 | text-align: left;
6 | text-align: right;
7 | text-align: center;
8 | text-align: justify;
9 | text-align: match-parent;
10 | text-align: justify-all;
11 | text-align: abc; /* Noncompliant !{Update the invalid value of property "text-align". Expected format: start | end | left | right | center | justify | match-parent | justify-all}! */
12 | text-align: 10; /* Noncompliant */
13 | }
14 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/text-anchor.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | text-anchor: inherit;
3 | text-anchor: start;
4 | text-anchor: middle;
5 | text-anchor: end;
6 | text-anchor: abc; /* Noncompliant !{Update the invalid value of property "text-anchor". Expected format: start | middle | end}! */
7 | text-anchor: 0.5; /* Noncompliant */
8 | }
9 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/text-combine-upright.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | text-combine-upright: inherit;
3 | text-combine-upright: none;
4 | text-combine-upright: all;
5 | text-combine-upright: digits;
6 | text-combine-upright: digits 2;
7 | text-combine-upright: digits 34;
8 | text-combine-upright: abc; /* Noncompliant !{Update the invalid value of property "text-combine-upright". Expected format: none | all | [ digits ? ]}! */
9 | text-combine-upright: 10px; /* Noncompliant */
10 | text-combine-upright: 10; /* Noncompliant */
11 | text-combine-upright: all 10; /* Noncompliant */
12 | text-combine-upright: all digits; /* Noncompliant */
13 | }
14 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/text-decoration-style.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | text-decoration-style: inherit;
3 | text-decoration-style: solid;
4 | text-decoration-style: double;
5 | text-decoration-style: dotted;
6 | text-decoration-style: dashed;
7 | text-decoration-style: wavy;
8 | text-decoration-style: abc; /* Noncompliant !{Update the invalid value of property "text-decoration-style". Expected format: solid | double | dotted | dashed | wavy}! */
9 | text-decoration-style: 10; /* Noncompliant */
10 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/text-decoration.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | text-decoration: inherit;
3 | text-decoration: none;
4 | text-decoration: underline;
5 | text-decoration: overline;
6 | text-decoration: line-through;
7 | text-decoration: blink;
8 | text-decoration: abc; /* Noncompliant !{Update the invalid value of property "text-decoration". Expected format: none | underline | overline | line-through | blink}! */
9 | text-decoration: 10; /* Noncompliant */
10 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/text-emphasis-position.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | text-emphasis-position: inherit;
3 | text-emphasis-position: over right;
4 | text-emphasis-position: left over;
5 | text-emphasis-position: under left;
6 | text-emphasis-position: right under;
7 | text-emphasis-position: 0; /* Noncompliant !{Update the invalid value of property "text-emphasis-position". Expected format: [ over | under ] && [ right | left ]}! */
8 | text-emphasis-position: 0px; /* Noncompliant */
9 | text-emphasis-position: over; /* Noncompliant */
10 | text-emphasis-position: right; /* Noncompliant */
11 | text-emphasis-position: over abc; /* Noncompliant */
12 | text-emphasis-position: under over; /* Noncompliant */
13 | text-emphasis-position: left right; /* Noncompliant */
14 | }
15 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/text-height.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | text-height: inherit;
3 | text-height: auto;
4 | text-height: font-size;
5 | text-height: text-size;
6 | text-height: max-size;
7 | text-height: abc; /* Noncompliant !{Update the invalid value of property "text-height". Expected format: auto | font-size | text-size | max-size}! */
8 | text-height: 10; /* Noncompliant */
9 |
10 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/text-justify.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | text-justify: inherit;
3 | text-justify: auto;
4 | text-justify: none;
5 | text-justify: inter-word;
6 | text-justify: inter-character;
7 | text-justify: abc; /* Noncompliant !{Update the invalid value of property "text-justify". Expected format: auto | none | inter-word | inter-character}! */
8 | text-justify: 10px; /* Noncompliant */
9 | text-justify: 10; /* Noncompliant */
10 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/text-orientation.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | text-orientation: inherit;
3 | text-orientation: mixed;
4 | text-orientation: upright;
5 | text-orientation: sideways;
6 | text-orientation: tb; /* Noncompliant */
7 | text-orientation: abc; /* Noncompliant !{Update the invalid value of property "text-orientation". Expected format: mixed | upright | sideways}! */
8 | text-orientation: -0.5; /* Noncompliant */
9 | }
10 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/text-overflow.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | text-overflow: inherit;
3 | text-overflow: clip;
4 | text-overflow: ellipsis;
5 | text-overflow: "abc";
6 | text-overflow: clip clip;
7 | text-overflow: "abc" "def";
8 | text-overflow: clip clip clip; /* Noncompliant !{Update the invalid value of property "text-overflow". Expected format: [ clip | ellipsis | ]{1,2}}! */
9 | text-overflow: 10; /* Noncompliant */
10 | text-overflow: abc; /* Noncompliant */
11 | text-overflow: clip abc; /* Noncompliant */
12 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/text-rendering.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | text-rendering: inherit;
3 | text-rendering: auto;
4 | text-rendering: optimizeSpeed;
5 | text-rendering: optimizeLegibility;
6 | text-rendering: geometricPrecision;
7 | text-rendering: abc; /* Noncompliant !{Update the invalid value of property "text-rendering". Expected format: auto | optimizespeed | optimizelegibility | geometricprecision}! */
8 | text-rendering: 10px; /* Noncompliant */
9 | text-rendering: 10; /* Noncompliant */
10 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/text-transform.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | text-transform: inherit;
3 | text-transform: none;
4 | text-transform: capitalize;
5 | text-transform: uppercase;
6 | text-transform: lowercase;
7 | text-transform: full-width;
8 | text-transform: abc; /* Noncompliant !{Update the invalid value of property "text-transform". Expected format: capitalize | uppercase | lowercase | full-width | none}! */
9 | text-transform: 10; /* Noncompliant */
10 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/top.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | top: inherit;
3 | top: auto;
4 | top: 10px;
5 | top: -10px;
6 | top: 10%;
7 | top: -10%;
8 | top: abc; /* Noncompliant !{Update the invalid value of property "top". Expected format: auto | | }! */
9 | top: 12; /* Noncompliant */
10 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/touch-action.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | touch-action: inherit;
3 | touch-action: none;
4 | touch-action: auto;
5 | touch-action: manipulation;
6 | touch-action: pan-x;
7 | touch-action: pan-y;
8 | touch-action: pan-x pan-y;
9 | touch-action: pan-y pan-x;
10 | touch-action: pan-y pan-x blabla; /* Noncompliant !{Update the invalid value of property "touch-action". Expected format: auto | none | [pan-x || pan-y] | manipulation}! */
11 | touch-action: pan-y manipulation; /* Noncompliant */
12 | touch-action: blabla; /* Noncompliant */
13 | touch-action: 10px; /* Noncompliant */
14 | }
15 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/transform-box.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | transform-box: inherit;
3 | transform-box: border-box;
4 | transform-box: fill-box;
5 | transform-box: view-box;
6 | transform-box: abc; /* Noncompliant !{Update the invalid value of property "transform-box". Expected format: border-box | fill-box | view-box}! */
7 | transform-box: 10; /* Noncompliant */
8 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/transform-style.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | transform-style: inherit;
3 | transform-style: auto;
4 | transform-style: flat;
5 | transform-style: preserve-3d;
6 | transform-style: abc; /* Noncompliant !{Update the invalid value of property "transform-style". Expected format: auto | flat | preserve-3d}! */
7 | transform-style: 10; /* Noncompliant */
8 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/transform.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | transform: inherit;
3 | transform: none;
4 | transform: matrix();
5 | transform: translate();
6 | transform: matrix() translate();
7 | transform: matrix() translate() translatex();
8 | transform: abc(); /* Noncompliant !{Update the invalid value of property "transform". Expected format: none | +}! */
9 | transform: matrix() abc(); /* Noncompliant */
10 | transform: 10px; /* Noncompliant */
11 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/transition-delay.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | transition-delay: inherit;
3 | transition-delay: 10s;
4 | transition-delay: 0;
5 | transition-delay: -10s; /* Noncompliant !{Update the invalid value of property "transition-delay". Expected format: (>=0)#}! */
6 | transition-delay: +10ms;
7 | transition-delay: 10; /* Noncompliant */
8 | transition-delay: 10.5; /* Noncompliant */
9 | transition-delay: abc; /* Noncompliant */
10 | transition-delay: 10s, 10s;
11 | transition-delay: 10s, 10s, 0, 10s;
12 | transition-delay: 10s, 10s, 0, -10s; /* Noncompliant */
13 | transition-delay: 10s, 10s, 10, 10s; /* Noncompliant */
14 | }
15 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/transition-duration.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | transition-duration: inherit;
3 | transition-duration: 10s;
4 | transition-duration: 0;
5 | transition-duration: -10s; /* Noncompliant !{Update the invalid value of property "transition-duration". Expected format: (>=0)#}! */
6 | transition-duration: +10ms;
7 | transition-duration: 10; /* Noncompliant */
8 | transition-duration: 10.5; /* Noncompliant */
9 | transition-duration: abc; /* Noncompliant */
10 | transition-duration: 10s, 10s;
11 | transition-duration: 10s, 10s, 0, 10s;
12 | transition-duration: 10s, 10s, 0, -10s; /* Noncompliant */
13 | transition-duration: 10s, 10s, 10, 10s; /* Noncompliant */
14 | }
15 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/unicode-bidi.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | unicode-bidi: inherit;
3 | unicode-bidi: embed;
4 | unicode-bidi: normal;
5 | unicode-bidi: bidi-override;
6 | unicode-bidi: isolate;
7 | unicode-bidi: isolate-override;
8 | unicode-bidi: plaintext;
9 | unicode-bidi: abc; /* Noncompliant !{Update the invalid value of property "unicode-bidi". Expected format: normal | embed | isolate | bidi-override | isolate-override | plaintext}! */
10 | unicode-bidi: 0.5; /* Noncompliant */
11 | }
12 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/user-select.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | user-select: auto;
3 | user-select: text;
4 | user-select: none;
5 | user-select: contain;
6 | user-select: all;
7 | user-select: abc; /* Noncompliant !{Update the invalid value of property "user-select". Expected format: auto | text | none | contain | all}! */
8 | user-select: 10; /* Noncompliant */
9 | user-select: 10px; /* Noncompliant */
10 | }
11 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/user-zoom.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | user-zoom: inherit;
3 | user-zoom: zoom;
4 | user-zoom: fixed;
5 | user-zoom: abc; /* Noncompliant !{Update the invalid value of property "user-zoom". Expected format: zoom | fixed}! */
6 | user-zoom: 10; /* Noncompliant */
7 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/vertical-align.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | vertical-align: inherit;
3 | vertical-align: baseline;
4 | vertical-align: sub;
5 | vertical-align: super;
6 | vertical-align: top;
7 | vertical-align: text-top;
8 | vertical-align: middle;
9 | vertical-align: bottom;
10 | vertical-align: text-bottom;
11 | vertical-align: 10%;
12 | vertical-align: -10%;
13 | vertical-align: 10px;
14 | vertical-align: -10px;
15 | vertical-align: abc; /* Noncompliant !{Update the invalid value of property "vertical-align". Expected format: baseline | sub | super | top | text-top | middle | bottom | text-bottom | | }! */
16 | vertical-align: 10; /* Noncompliant */
17 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/visibility.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | visibility: inherit;
3 | visibility: visible;
4 | visibility: hidden;
5 | visibility: collapse;
6 | visibility: abc; /* Noncompliant !{Update the invalid value of property "visibility". Expected format: visible | hidden | collapse}! */
7 | visibility: 10; /* Noncompliant */
8 | }
9 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/voice-duration.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | voice-duration: inherit;
3 | voice-duration: auto;
4 | voice-duration: 10s;
5 | voice-duration: 3ms;
6 | voice-duration: 0;
7 | voice-duration: 3; /* Noncompliant !{Update the invalid value of property "voice-duration". Expected format: auto | (>=0)}! */
8 | voice-duration: -3s; /* Noncompliant */
9 | voice-duration: 50.5%; /* Noncompliant */
10 | voice-duration: abc; /* Noncompliant */
11 | voice-duration: 10px; /* Noncompliant */
12 | }
13 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/voice-stress.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | voice-stress: inherit;
3 | voice-stress: normal;
4 | voice-stress: strong;
5 | voice-stress: moderate;
6 | voice-stress: none;
7 | voice-stress: reduced;
8 | voice-stress: 3s; /* Noncompliant !{Update the invalid value of property "voice-stress". Expected format: normal | strong | moderate | none | reduced}! */
9 | voice-stress: -3s; /* Noncompliant */
10 | voice-stress: 50.5%; /* Noncompliant */
11 | voice-stress: abc; /* Noncompliant */
12 | voice-stress: 10px; /* Noncompliant */
13 | }
14 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/white-space.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | white-space: inherit;
3 | white-space: normal;
4 | white-space: pre;
5 | white-space: nowrap;
6 | white-space: pre-wrap;
7 | white-space: pre-line;
8 | white-space: abc; /* Noncompliant !{Update the invalid value of property "white-space". Expected format: normal | pre | nowrap | pre-wrap | pre-line}! */
9 | white-space: 10; /* Noncompliant */
10 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/widows.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | widows: inherit;
3 | widows: 10;
4 | widows: -10;
5 | widows: 0;
6 | widows: 10%; /* Noncompliant !{Update the invalid value of property "widows". Expected format: }! */
7 | widows: none; /* Noncompliant */
8 | widows: 10px; /* Noncompliant */
9 | }
10 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/width.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | width: inherit;
3 | width: auto;
4 | width: 100%;
5 | width: -100%;
6 | width: 10px;
7 | width: -10px;
8 | width: 10; /* Noncompliant !{Update the invalid value of property "width". Expected format: auto | | | fill | max-content | min-content | fit-content | (fit-content)}! */
9 | width: abc; /* Noncompliant */
10 | width: fill;
11 | width: max-content;
12 | width: min-content;
13 | width: fit-content;
14 | width: fit-content(10%);
15 | }
16 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/word-break.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | word-break: inherit;
3 | word-break: normal;
4 | word-break: keep-all;
5 | word-break: break-all;
6 | word-break: abc; /* Noncompliant !{Update the invalid value of property "word-break". Expected format: normal | keep-all | break-all}! */
7 | word-break: 10; /* Noncompliant */
8 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/word-spacing.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | word-spacing: inherit;
3 | word-spacing: normal;
4 | word-spacing: 10px;
5 | word-spacing: 10cm;
6 | word-spacing: 10%;
7 | word-spacing: -10%;
8 | word-spacing: abc; /* Noncompliant !{Update the invalid value of property "word-spacing". Expected format: normal | | }! */
9 | word-spacing: 10; /* Noncompliant */
10 | }
11 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/wrap-margin.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | wrap-margin: inherit;
3 | wrap-margin: 10px;
4 | wrap-margin: -10px;
5 | wrap-margin: 0;
6 | wrap-margin: abc; /* Noncompliant !{Update the invalid value of property "wrap-margin". Expected format: }! */
7 | wrap-margin: 10; /* Noncompliant */
8 | }
9 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/writing-mode.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | writing-mode: inherit;
3 | writing-mode: horizontal-tb;
4 | writing-mode: vertical-rl;
5 | writing-mode: vertical-lr;
6 | writing-mode: sideways-rl;
7 | writing-mode: sideways-rl;
8 | writing-mode: rl-tb; /* Noncompliant */
9 | writing-mode: tb-rl; /* Noncompliant */
10 | writing-mode: lr; /* Noncompliant */
11 | writing-mode: rl; /* Noncompliant */
12 | writing-mode: tb; /* Noncompliant */
13 | writing-mode: abc; /* Noncompliant !{Update the invalid value of property "writing-mode". Expected format: horizontal-tb | vertical-rl | vertical-lr | sideways-rl | sideways-lr}! */
14 | writing-mode: -0.5; /* Noncompliant */
15 | }
16 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/z-index.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | z-index: inherit;
3 | z-index: auto;
4 | z-index: -10;
5 | z-index: 0;
6 | z-index: 10;
7 | z-index: abc; /* Noncompliant !{Update the invalid value of property "z-index". Expected format: auto | }! */
8 | z-index: 10.5; /* Noncompliant */
9 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/properties/zoom.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | zoom: inherit;
3 | zoom: auto;
4 | zoom: 10%;
5 | zoom: 10;
6 | zoom: -10; /* Noncompliant !{Update the invalid value of property "zoom". Expected format: auto | (>=0) | (>=0)}! */
7 | zoom: -10%; /* Noncompliant */
8 | zoom: abc; /* Noncompliant */
9 | zoom: 10px; /* Noncompliant */
10 | zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
11 | zoom: var(abc);
12 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/propertyRegularExpression.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | animation-delay: 3s; /* Noncompliant ![sc=3;ec=18;el=+0]! !{Remove this "animation" property...}! */
3 | color: red;
4 | animation-duration: 3s; /* Noncompliant ![sc=3;ec=21;el=+0]! !{Remove this "animation" property...}! */
5 | }
6 |
7 | .mybox {
8 | animation: 3s; /* Noncompliant ![sc=3;ec=12;el=+0]! !{Remove this "animation" property...}! */
9 | color: red;
10 | }
11 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/selectorNamingConvention.css:
--------------------------------------------------------------------------------
1 | .mybox { /* Compliant */
2 | }
3 |
4 | #my-box { /* Compliant */
5 | }
6 |
7 | div { /* Compliant */
8 | }
9 |
10 | .MYbOx { /* Noncompliant ![sc=2;ec=7;el=+0]! !{Rename selector "MYbOx" to match the regular expression: ^[a-z][-a-z0-9]*$}! */
11 | }
12 |
13 | .ab_cd { /* Noncompliant ![sc=2;ec=7;el=+0]! !{Rename selector "ab_cd" to match the regular expression: ^[a-z][-a-z0-9]*$}! */
14 | }
15 |
16 | .abcd #rrr div { /* Compliant */
17 | }
18 |
19 | .abcd #-rrr div { /* Noncompliant ![sc=8;ec=12;el=+0]! !{Rename selector "-rrr" to match the regular expression: ^[a-z][-a-z0-9]*$}! */
20 | }
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/selectorNamingConventionCustomFormat.css:
--------------------------------------------------------------------------------
1 | .mybox { /* Compliant */
2 | }
3 |
4 | #my-box { /* Compliant */
5 | }
6 |
7 | div { /* Compliant */
8 | }
9 |
10 | .MYbOx { /* Noncompliant ![sc=2;ec=7;el=+0]! !{Rename selector "MYbOx" to match the regular expression: ^[-a-z]+$}! */
11 | }
12 |
13 | .ab_cd { /* Noncompliant ![sc=2;ec=7;el=+0]! !{Rename selector "ab_cd" to match the regular expression: ^[-a-z]+$}! */
14 | }
15 |
16 | .abcd #rrr div { /* Compliant */
17 | }
18 |
19 | .abcd #r8r #r7r div { /* Noncompliant */ /* Noncompliant */
20 | }
21 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/starhack.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | border: 1px solid black;
3 | *width: 100px; /* Noncompliant ![sc=3;ec=9;el=+0]! !{Remove this usage of the "*" hack.}! */
4 | }
5 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/tabcharacter.css:
--------------------------------------------------------------------------------
1 | /* Noncompliant ![sl=0]! !{Replace all tab characters in this file by sequences of whitespaces.}! */
2 | h1 {
3 | color: red;
4 | }
5 | h2 {
6 | color: green;
7 | }
8 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/todoTagPresence.css:
--------------------------------------------------------------------------------
1 | /* TODO: blabla */ /* Noncompliant */
2 | h1 {
3 | color: green;
4 | }
5 |
6 | /* [TODO] blabla */ /* Noncompliant */
7 | h1 {
8 | color: green;
9 | }
10 |
11 | /* Noncompliant ![sl=12]! */
12 | /* TODO:
13 | - blabla
14 | - ...
15 | */
16 | h1 {
17 | color: green;
18 | }
19 |
20 | /* todo: blabla */ /* Noncompliant */
21 | h1 {
22 | color: green;
23 | }
24 |
25 | /* Noncompliant ![sl=+1]! */
26 | /* todo:
27 | todo
28 | */
29 | h1 {
30 | color: green;
31 | }
32 |
33 | h1 {
34 | color: green; /* TODO: blabla */ /* Noncompliant */
35 | }
36 |
37 | /* todoforthefirsttime */
38 | h1 {
39 | color: green;
40 | }
41 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/trailingWhitespace.css:
--------------------------------------------------------------------------------
1 | /* Noncompliant ![sl=4]! !{Remove the useless trailing whitespaces at the end of this line.}! */
2 | /* Noncompliant ![sl=7]! !{Remove the useless trailing whitespaces at the end of this line.}! */
3 | /* Noncompliant ![sl=9]! !{Remove the useless trailing whitespaces at the end of this line.}! */
4 | h1 {
5 | color:red;
6 | }
7 |
8 | h2 {
9 | color:green;
10 | }
11 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/underscorehack.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | border: 1px solid black;
3 | _width: 100px; /* Noncompliant ![sc=3;ec=9;el=+0]! !{Remove this usage of the "_" hack.}! */
4 | }
5 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/universalselector.css:
--------------------------------------------------------------------------------
1 | * { /* Noncompliant ![sc=1;ec=2;el=+0]! !{Remove this usage of the universal selector as key part.}! */
2 | color: red;
3 | }
4 |
5 | * { /* Noncompliant ![sc=3;ec=4;el=+0]! !{Remove this usage of the universal selector as key part.}! */
6 | color: red;
7 | }
8 |
9 | .selected * { /* Noncompliant ![sc=11;ec=12;el=+0]! !{Remove this usage of the universal selector as key part.}! */
10 | color: red;
11 | }
12 |
13 | /* Compliant: Universal selector is not key */
14 | .selected * a {
15 | color: red;
16 | }
17 |
18 | /* Compliant: Universal selector is not key */
19 | .selected * a[div=abc] {
20 | color: red;
21 | }
22 |
23 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/unknownFunctions.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | color: hello(100); /* Noncompliant ![sc=10;ec=15;el=+0]! !{Remove this usage of the unknown "hello" function.}!*/
3 | background-image: -moz-blabla(12);
4 | background-image: repeating-linear-gradient(180deg,rgb(26,198,204),rgb(26,198,204) 7%, rgb(100,100,100) 10%);
5 | background-image: Repeating-linear-gradient(180deg,rgb(26,198,204),rgb(26,198,204) 7%, rgb(100,100,100) 10%);
6 | background-image: -moz-linear-gradient(top, hsl(0, 80%, 70%), #bada55);
7 | filter: alpha(opacity=50);
8 | }
9 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/unknownPseudos.css:
--------------------------------------------------------------------------------
1 | @page :abc() { /* Noncompliant ![sc=8;ec=11;el=+0]! !{Remove this usage of the unknown "abc" pseudo.}!*/
2 | }
3 |
4 | a:lang() {
5 | }
6 |
7 | a:-moz-HELLO() {
8 | }
9 |
10 | a:hello() { /* Noncompliant ![sc=3;ec=8;el=+0]! !{Remove this usage of the unknown "hello" pseudo.}!*/
11 | }
12 |
13 | p::first-line {
14 | text-transform: uppercase;
15 | }
16 |
17 | p::-moz-abc {
18 | text-transform: uppercase;
19 | }
20 |
21 | p::hello { /* Noncompliant ![sc=4;ec=9;el=+0]! !{Remove this usage of the unknown "hello" pseudo.}!*/
22 | text-transform: uppercase;
23 | }
24 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/utf16BE.css:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SonarQubeCommunity/sonar-css/640fe76d459ef68d1df6da3ccb23ffb0161e8913/css-checks/src/test/resources/checks/utf16BE.css
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/utf16LE.css:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SonarQubeCommunity/sonar-css/640fe76d459ef68d1df6da3ccb23ffb0161e8913/css-checks/src/test/resources/checks/utf16LE.css
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/utf8WithBom.css:
--------------------------------------------------------------------------------
1 | /* Noncompliant ![sl=0]! !{Remove the Byte Order Mark (BOM).}! */
2 | .mybox {
3 | margin-left: 10px;
4 | }
5 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/utf8WithoutBom.css:
--------------------------------------------------------------------------------
1 | h1 {
2 | color:red;
3 | }
4 |
--------------------------------------------------------------------------------
/css-checks/src/test/resources/checks/vendorprefixes.css:
--------------------------------------------------------------------------------
1 | h1 {
2 | color:red;
3 | }
4 |
5 | /* The "foo" property is not defined in W3C standards, so it is ignored */
6 | a {
7 | -moz-foo: bar;
8 | }
9 |
10 | .mybox { /* Noncompliant ![sc=1;ec=7;el=+0]! !{Define the missing vendor prefixes: -ms- -webkit- for the "user-select" property.}! */
11 | -moz-user-select: 5px;
12 | }
13 |
14 | .mybox { /* Noncompliant ![sc=1;ec=7;el=+0]! !{Define the missing vendor prefixes: -ms- -webkit- for the "user-select" property.}! */
15 | -MOZ-user-select: 5px;
16 | }
17 |
18 | { /* Noncompliant ![sc=3;ec=4;el=+0]! !{Define the missing vendor prefixes: -ms- -webkit- for the "user-select" property.}! */
19 | -MOZ-user-select: 5px;
20 | }
21 |
--------------------------------------------------------------------------------
/css-frontend/src/test/resources/metrics/complexity.css:
--------------------------------------------------------------------------------
1 | mybox { /* +1 */
2 | }
3 |
4 | .mybox { /* +1 */
5 | }
6 |
7 | #mybox { /* +1 */
8 | }
9 |
10 | [target] { /* +1 */
11 | }
12 |
13 | :hover { /* +1 */
14 | }
15 |
16 | a:hover { /* +2 */
17 | }
18 |
19 | a.class:hover { /* +3 */
20 | }
21 |
22 | div a { /* +2 */
23 | }
24 |
25 | div a:hover span.myclass { /* +5 */
26 | }
27 |
28 | ul > div + a + li { /* + 4 */
29 | }
30 |
31 | @keyframes keyframes { /* +1 */
32 | from { margin-top: 50px; } /* +1 */
33 | 50% { margin-top: 150px; } /* +1 */
34 | to { margin-top: 100px; } /* +1 */
35 | }
36 |
--------------------------------------------------------------------------------
/css-frontend/src/test/resources/metrics/metrics.css:
--------------------------------------------------------------------------------
1 | h2 {
2 | color:red; /* h2 is red */
3 | }
4 | /* h3 */
5 | h3 {
6 | color: green;
7 | }
8 | /* */
9 | h1 {
10 | display:none; /* NOSONAR */
11 | } /*
12 |
13 |
14 | */
15 | p.myclass{
16 | display:block;
17 | }
18 |
19 | @media print{
20 | p {
21 | color:blue;
22 | }
23 | }
24 |
28 |
29 |
--------------------------------------------------------------------------------
/css-frontend/src/test/resources/starting-with-bom.css:
--------------------------------------------------------------------------------
1 | @import url(more.css);
2 |
3 |
--------------------------------------------------------------------------------
/its/plugin/projects/metrics/src/source1.css:
--------------------------------------------------------------------------------
1 | @keyframes bounce {
2 | 0%, 20%, 50%, 80%, 100% {
3 | transform: translateY(0);
4 | }
5 |
6 | 40% {
7 | transform: translateY(-30px);
8 | }
9 |
10 | 60% {
11 | transform: translateY(-15px);
12 | }
13 | }
14 |
15 | .bounce {
16 | animation-name: bounce;
17 | }
18 |
--------------------------------------------------------------------------------
/its/plugin/projects/metrics/src/source2.css:
--------------------------------------------------------------------------------
1 | .mybox {
2 | border: 1px solid black;
3 | *width: 100px;
4 | }
5 |
--------------------------------------------------------------------------------
/its/plugin/src/test/resources/com/sonar/it/css/empty-profile.xml:
--------------------------------------------------------------------------------
1 |
2 | empty-profile
3 | css
4 |
5 |
6 |
--------------------------------------------------------------------------------
/its/plugin/src/test/resources/com/sonar/it/css/it-profile.xml:
--------------------------------------------------------------------------------
1 |
2 | it-profile
3 | css
4 |
5 |
6 | css
7 | zero-units
8 | MAJOR
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/sonar-css-plugin/src/test/resources/issues.css:
--------------------------------------------------------------------------------
1 | h1 {
2 | color: red !important;
3 | }
4 |
5 | /* TODO: blabla... */
6 | h1 {
7 | color: red ! important;
8 | }
9 |
--------------------------------------------------------------------------------
/sonar-css-plugin/src/test/resources/issuesWithBOM.css:
--------------------------------------------------------------------------------
1 | h1 {
2 | color: red !important;
3 | }
4 |
5 | /* TODO: blabla... */
6 | h1 {
7 | color: red ! important;
8 | }
9 |
--------------------------------------------------------------------------------
/sonar-css-plugin/src/test/resources/measures.css:
--------------------------------------------------------------------------------
1 | h2 {
2 | color:red; /* h2 is red */
3 | }
4 | /* h3 */
5 | h3 {
6 | color: green;
7 | }
8 | /* */
9 | h1 {
10 | display:none; /* NOSONAR */
11 | } /*
12 |
13 |
14 | */
15 | p.myclass{
16 | display:block;
17 | }
18 |
19 | @media print{
20 | p {
21 | color:blue;
22 | }
23 | }
24 |
28 |
--------------------------------------------------------------------------------
/sonar-css-plugin/src/test/resources/measuresWithBOM.css:
--------------------------------------------------------------------------------
1 | h2 {
2 | color:red; /* h2 is red */
3 | }
4 | /* h3 */
5 | h3 {
6 | color: green;
7 | }
8 | /* */
9 | h1 {
10 | display:none; /* NOSONAR */
11 | } /*
12 |
13 |
14 | */
15 | p.myclass{
16 | display:block;
17 | }
18 |
19 | @media print{
20 | p {
21 | color:blue;
22 | }
23 | }
24 |
28 |
--------------------------------------------------------------------------------
/sonar-css-plugin/src/test/resources/minified/test-min.css:
--------------------------------------------------------------------------------
1 | h1 {
2 | color: red;
3 | }
4 |
--------------------------------------------------------------------------------
/sonar-css-plugin/src/test/resources/minified/test.min.css:
--------------------------------------------------------------------------------
1 | h1 {
2 | color: red;
3 | }
4 |
--------------------------------------------------------------------------------
/sonar-css-plugin/src/test/resources/minified/testmin.css:
--------------------------------------------------------------------------------
1 | h1 {
2 | color: red;
3 | }
4 |
--------------------------------------------------------------------------------
/sonar-css-plugin/src/test/resources/parsingError.css:
--------------------------------------------------------------------------------
1 | blabla...
2 |
--------------------------------------------------------------------------------